mcpField
E
experience_loader

experience_loader

github.com/volcengineAgent 工作流41.1k60 次安装今天更新
代码仓库

关于 experience_loader

experience_loader 是一项 Agent 技能,会在执行任务前搜索可复用经验。它先检查适用条件和排除项,再依据当前事实复核经验指引。

主要功能

  1. 01按任务搜索经验
  2. 02检查适用条件与排除项
  3. 03选择性读取经验
  4. 04依据当前事实重新核验
  5. 05处理多意图任务

适用场景

  1. 01行动前查找相关指引
  2. 02跳过不适用的经验
  3. 03处理包含多个意图的任务

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/volcengine/openviking --skill experience_loader

安装后在 Claude Code 中输入/experience_loader确认已加载。

详细介绍

experience_loader

当可复用的执行经验可能有所帮助时,在采取任务操作之前使用此技能。

必需的工作流

  1. 在采取任务操作之前,调用 search_experience,并使用描述当前任务的自然语言查询。
  2. 从当前领域、用户意图、目标对象、请求的操作、政策关键词以及可能的工具/操作族构建查询。避免使用“帮助用户”之类的模糊查询。
  3. 查看返回的候选结果。每个候选结果都是一个匹配案例加上关联的经验条目;每个经验条目包含其 name、uri,以及一段简短的 situation 摘要,描述其适用性和排除条件。
  4. 读取前先做门控。 对于每个关联的经验,阅读其 situation 摘要,并检查当前任务是否匹配该经验的适用性,且不匹配其任何排除项 / “不适用于” / “does not apply to” 条目。跳过那些 situation 明确排除你的情况的经验(例如错误的舱位等级、已完成的航班、不同的操作族或不同的变更类型)。只有在完成此检查后,才对看起来适用的经验调用 read_experience。如果没有经验通过门控,则在没有经验指导的情况下继续。
  5. 你可以使用改进后的关键词多次调用 search_experience,也可以对通过门控的经验多次调用 read_experience。
  6. 将已加载的经验视为可复用的指导,而不是当前任务的事实。当前政策、当前工具结果和当前用户事实优先于先前的经验。
  7. 读取后重新验证。 即使在 read_experience 之后,在根据该经验行动之前,也要根据你从工具中获得的当前事实(舱位等级、预订状态、航班日期、航段状态等)检查其完整的 ## Situation。如果在你已掌握具体事实的情况下,任何“不适用于” / 排除条件与当前任务匹配,则丢弃该经验,改为根据政策和工具结果继续——不要应用其 Approach 或 Reflect。
  8. 多意图任务(例如“取消,然后预订”、“升舱然后改签航班”、“拒绝修改然后提供备选方案”)可能合理地需要多个经验;请独立地对每个环节的经验进行门控和应用。不要仅仅因为某个环节的经验到达本地返回标记就结束任务(done / transfer_to_human_agents)——检查用户是否还有剩余意图。
  9. 如果门控后没有任何关联经验可能相关,则在没有经验指导的情况下继续。

已加载经验中的本地返回标记

经验返回标记是针对所覆盖意图/子任务的本地标记。它们不是整个任务的成功/失败标签,也不是自动允许调用 done 的许可。

  • RETURN_COMPLETED:此经验所覆盖的特定意图/子任务已完成,通常是在完成所需的业务读/写工具调用和所需的客户沟通之后。如果用户还有另一个独立意图,请继续处理下一个意图,而不是结束对话。
  • RETURN_BLOCKED(reason="..."):在当前事实、政策、缺失输入、拒绝边界或升级边界下,所覆盖的意图/子任务无法继续。执行该经验要求的任何沟通/升级,然后如果其他剩余用户意图仍然可操作,则继续处理它们。
  • RETURN_NOT_APPLICABLE:该经验不匹配当前事实;丢弃它,并使用另一个适用的经验或当前政策/工具事实。

拒绝、无选项、政策不合格、缺失输入和 transfer_to_human_agents 分支应被解释为针对该本地意图的 RETURN_BLOCKED(...),而不是整个任务完成。在全局结束之前,请验证每个用户意图都已完成、被阻塞、不适用,或已被用户/环境明确转移/停止。

工具

  • search_experience(query, limit=10):在当前用户下搜索 OpenViking memories/cases,读取每个匹配案例的 ## Linked Experiences 部分,并返回 JSON 候选结果,包含案例评分、案例 URI、任务签名、输入摘要以及关联的经验条目(每条包含 name、uri,以及从该经验 ## Situation 部分提取的 situation 片段)。
  • read_experience(experience_uri):按完整 URI 读取一条 OpenViking 经验记忆并返回 Markdown。

评论

支持 Markdown