Skip to content

Agents:复用现有 Harness 的应用内 Agent 任务闭环 #122

Open

Description

@tans

来自官网四步叙事的后续要求:明确 Agents 功能如何在 MIAO 中实现,并交付能核对的产品闭环。

GitHub 实施 issue:#122
Multica 同步任务:JISU-69(01a12b82-c82a-7ea4-b278-967de10f0f47)

关联官网:tans/miao.my#16
关联 Multica:JISU-61(01a12b3e-b0f1-733c-83ca-1f3acedcb1ad)

现有基础(已读代码,尚未做本轮现场验收)

  • internal/harness/ 已提供共享执行循环、运行状态、版本、确认、取消、预算与恢复契约。
  • internal/httpapi/harness.go、durable_harness_store.go 承载交互入口和持久运行/事件;task_agent_runtime.go 将后台任务适配到同一 Harness。
  • task_definition.go 已有目标、触发、表/字段授权、动作 ID/修订、收件人及运行限制,不应再建立独立 Agent 引擎或身份系统。
  • public/modules/agent-assistant.js 已有“转为后台任务”,要求先选择应用,创建后进入任务页审阅启用。
  • 产品事实:自然语言产生受控声明/候选;JEV 选择合法候选;服务端重新授权后执行。不能把模型输出当成权限。

最小产品方案

Agents 是现有应用内“可重复执行的目标与授权任务”的产品入口。继续复用小助手和后台任务,不新增 Builder/User Agent 产品实体。

  1. Describe / Shape:在应用中描述目标;复用业务约定和现有上下文,形成任务草稿。展示目标、触发方式、读取/写入字段、允许动作、收件人与预算,缺失的信息由用户补齐,不猜身份、关系或记录 ID。
  2. Use:在应用的现有后台任务页提供清楚的 Agent 任务列表、详情和手动运行入口;支持从小助手转入、修改草稿、审阅启用、暂停及查看历史。优先补齐现有入口,避免另一套 Agent 管理中心或数据集合。
  3. Operate:手动、定时与已支持事件触发统一走现有 worker/Harness。执行身份与范围始终受明确授权及授权者当前权限约束;任务绑定动作修订,修改定义后重新审阅,不静默替换运行中的定义。
  4. 运行反馈:沿用持久 run/事件/业务回执,显示进行中、等待确认、完成、失败、取消、预算耗尽和结果未知;未知写入先核实,不能盲目重放。私有对话不随任务发布给其他成员。

与已有需求的分工

实施顺序

先核对现有“对话 → 草稿 → 审阅 → 后台运行”路径,记录已有能力和具体缺口;随后仅补齐列表/详情/运行反馈与必要的服务端校验。凡已有 API、任务定义或回执可复用,直接复用。UI 遵循 DESIGN.md,并保持中英文产品事实一致。

验收标准

  • 在空测试应用中完成一项真实业务任务:读取获授权的待处理记录,按允许动作更新状态并发送站内通知;能看到目标、授权、任务版本和每次运行回执。
  • 同一目标可从小助手转为草稿,审阅启用后关闭浏览器仍可运行;手动与定时入口使用同一执行内核。
  • 查看者不能创建写任务;撤销成员/字段/动作授权或改变动作修订后,后续执行被拒绝或暂停,给出明确原因。
  • 重复请求、服务重启、取消和模型失败不重复已成功写入;未知结果保留核实状态。保留已有部分成功回执,不虚构整批原子回滚。
  • 无 shell、任意源码、隐式全库权限或跨应用授权;未经独立公开授权的记录/附件不对匿名访问开放。
  • 提供真实运行证据(版本、角色、触发、结果与截图/录屏),据此更新官网说明;原型和代码接入不能代替现场验收。

本 issue 是实施与验收任务。本次创建不表示上述新增入口或场景已完成。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions