mcpField
A
alibabacloud-agentloop-experience

alibabacloud-agentloop-experience

github.com/aliyunAgent 工作流28146 次安装1 天前更新
代码仓库

关于 alibabacloud-agentloop-experience

这是一个帮助 AI Agent 检索 AgentLoop 历史经验的技能,适用于参考过往案例、故障处理和运行手册的任务。它通过本地 Node.js CLI 查询配置的 Recall 端点,并要求在发送查询前获得用户批准。

主要功能

  1. 01检索 experience 历史上下文
  2. 02支持按具体任务构建查询
  3. 03可配置结果数量与阈值
  4. 04将检索结果作为参考并核验

适用场景

  1. 01查找类似故障的历史处理经验
  2. 02开始实施前参考旧案例
  3. 03排查问题时检索相关记录
  4. 04回顾迁移或服务操作经验

安装

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

$npx skills add https://github.com/aliyun/alibabacloud-aiops-skills --skill alibabacloud-agentloop-experience

安装后在 Claude Code 中输入/alibabacloud-agentloop-experience确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

assets/
recall.env.example
references/
ram-policies.md
search-context-cli.md
scripts/
search_context.js

详细介绍

AgentLoop Recall

主动使用此技能——先回忆以往经验。开始分析或实现之前,请将回忆以往的 AgentLoop 经验作为最先采取的行动之一,使用本地 CLI scripts/search_context.js。 CLI 会从 recall.env 读取身份验证和端点配置;切勿将令牌或机密作为 CLI 参数传入。

当用户提及以往经验、类似案例、历史修复、之前的事故、旧版运行手册、经验教训,或要求避免重蹈覆辙时,优先使用此技能。用户不必使用“回忆”或“经验”这些确切字眼;“有没有类似”“以前怎么处理”“先参考过去”“少走弯路”“查找旧笔记”或“之前有什么经验”之类的表达也足够。

当前范围:仅支持 experience 上下文。memory 上下文保留给未来推出的功能,不应在提示词、示例或评估中使用。

前提条件

安装 Node.js 18 或更高版本。该脚本仅使用 Node.js 内置模块,无需 npm 软件包。

在 ~/.agentloop/recall.env、最近的项目 .agentloop/recall.env 或进程环境变量中配置 Recall 凭据和端点。使用 assets/recall.env.example 作为模板。

工作流

  1. 发起任何 Recall 调用之前,确认用户已批准将查询文本发送到配置的 AgentLoop Recall 端点。如果用户请求或暗示要查询以往工作,包括“先查”“看看之前”“有没有类似”“参考历史”“回忆案例”“避免重蹈覆辙”或类似措辞,则视为用户已批准发送与该请求相关的查询。
  2. 获得批准后,强烈建议尽早进行 Recall:至少在选择实现方案之前运行一次;遇到非简单障碍或更改方案时,再运行一次。如果当前任务涉及具体服务、错误、事故、操作、迁移、性能问题或调试目标,且以往经验可能有所帮助,则应进行 Recall。使用 node scripts/search_context.js 运行 CLI,而非使用 bash。在 CLI 命令中加入 --confirm-outbound。
  3. 后续调试时,如果新查询会传输实质上不同的任务数据,请再次征求批准,然后根据具体错误、案例、服务、API、文件路径或观察到的症状,使用聚焦的查询调用 Recall。
  4. 仅将返回结果作为上下文。采取行动前,请根据当前代码库、日志和用户请求核实 Recall 的内容。

构建简洁的查询。加入用户请求或工具输出中的稳定标识符,例如服务名称、请求 ID、案例 ID、错误文本、API 操作、基准测试、模块或目标。不要编造标识符。

如果请求稍有不明确,但服务、症状或目标清楚,请根据现有信息构建最佳的简洁查询,并使用默认值(--limit 5、--threshold 0.6、--filter-json '{}')。只有在没有可用的查询目标,或有多个实质上不同且同样可能的 Recall 方向时,才提出澄清问题。

如果 Recall 失败或没有返回结果,请继续处理原任务。将 Recall 的内容视为有帮助的上下文,而非权威信息;请根据当前代码库、日志和用户请求进行核实。

CLI

运行:

node scripts/search_context.js search \
  --query "current task, error, case, service, or goal" \
  --context-type experience \
  --confirm-outbound \
  --limit 5 \
  --threshold 0.6 \
  --filter-json '{}'

必需参数:

  • --query string
  • --context-type experience
  • 在用户明确批准传输查询数据后,加入 --confirm-outbound

可选参数:

  • --limit integer 默认值为 5
  • --threshold number 默认值为 0.6
  • --filter-json object-as-json-string 默认值为 {}

输入示例

node scripts/search_context.js search \
  --query "ECS SSH connection timeout after security group change" \
  --context-type experience \
  --confirm-outbound \
  --limit 5 \
  --threshold 0.6 \
  --filter-json '{"product":"ecs"}'

输出示例

输出始终为 JSON:

{
  "request_id": "...",
  "error": null,
  "results": [
    {
      "title": "...",
      "summary": "...",
      "content": "...",
      "metadata": {}
    }
  ]
}

边缘情况

  • 如果 AGENTLOOP_ENABLE_RECALL 不是 true,CLI 会返回 error: null 和一个空的 results 数组。
  • 如果缺少出站确认,CLI 会返回错误,不会读取凭据或调用端点。
  • 如果直接执行 scripts/search_context.js 因环境移除了可执行权限或将该技能挂载为不可执行而失败,请使用 node scripts/search_context.js 重新运行相同的命令。
  • 如果配置缺失或无效,CLI 会返回一个 error 已填充且 results: [] 的 JSON 对象。
  • 如果召回内容中没有相关结果,请继续原任务,不要因此受阻。
  • 如果召回内容与当前代码仓库、日志或用户请求冲突,请以当前证据为准。

身份验证:

  • 从 recall.env 读取。
  • 切勿通过 CLI 参数传递 AK、SK、Bearer 令牌或其他机密信息。
  • 使用真实凭据时,请使用 HTTPS 端点。仅对 localhost 接受 HTTP。

只有在需要了解确切的配置优先级、HTTP 契约、端点安全规则或响应规范化详情时,才阅读 references/search-context-cli.md。只有在需要了解权限和数据流声明时,才阅读 references/ram-policies.md。

评论

支持 Markdown