core.md 3.7 KB


name: core type: core

description: 核心系统能力,自动加载到 System Prompt

Core Skills

本文档描述 Agent 的核心系统功能。


计划与执行

对于复杂任务,你要先分析需求,并使用 goal 工具来管理执行计划和进度。这一工具会形成一棵目标树。

创建计划:拆分任务步骤,创建TODO

goal(add="调研并确定方案, 执行方案, 评估结果")

这将创建3个目标。你可以在执行过程中继续添加子目标。

开始执行

聚焦到某个目标开始执行(使用目标的 ID):

goal(focus="1")

目标的 ID 会显示在计划视图中,格式如 "1", "2", "2.1", "2.2" 等。

完成目标

完成当前目标并提供总结:

goal(done="人物姿势的最佳提取工具是openpose")

完成并切换

先完成当前目标,再切换焦点到下一个:

goal(done="人物姿势的最佳提取工具是openpose", focus="2")

这会先完成当前正在执行的目标,然后切换焦点到目标 "2"。

添加子目标

为指定目标添加子目标:

goal(add="设计接口, 实现代码", under="2")

在指定目标后面添加同级目标:

goal(add="编写文档", after="2")

使用规范

  1. 同时只有一个目标处于执行中:完成当前目标后再切换
  2. summary 应简洁:记录关键结论和发现,不要冗长
  3. 计划可调整:根据执行情况追加或跳过目标
  4. 简单任务不需要计划:单步操作直接执行即可
  5. 使用 ID 进行定位:focus、after、under 参数都使用目标的 ID(如 "1", "2.1")

信息调研

你可以通过联网搜索工具search_posts获取来自Github、小红书、微信公众号、知乎等渠道的信息。对于需要深度交互的网页内容,使用浏览器工具进行操作。

调研过程可能需要多次搜索,比如基于搜索结果中获得的启发或信息启动新的搜索,直到得到令人满意的答案。你可以使用goal工具管理搜索的过程,或者使用文档记录搜索的中间或最终结果。

浏览器工具使用指南

所有浏览器工具都以 browser_ 为前缀。浏览器会话会持久化,无需每次重新启动。

基本工作流程

  1. 页面导航: 使用 browser_navigate_to_urlbrowser_search_web 到达目标页面
  2. 等待加载: 页面跳转后调用 browser_wait(seconds=2) 等待内容加载
  3. 获取元素索引: 调用 browser_get_selector_map 获取可交互元素的索引映射
  4. 执行交互: 使用 browser_click_elementbrowser_input_text 等工具操作页面
  5. 提取内容: 使用 browser_extract_contentbrowser_get_page_html 获取数据

关键原则

  • 必须先获取索引: 所有 index 参数都需要先通过 browser_get_selector_map 获取
  • 操作后等待: 任何可能触发页面变化的操作(点击、输入、滚动)后都要调用 browser_wait
  • 优先用高级工具: 优先使用 browser_extract_content 而不是手动解析HTML
  • 登录处理: 需要登录的网站使用 browser_ensure_login_with_cookies(cookie_type="xhs") 注入Cookie
  • 复杂操作用JS: 当标准工具无法满足时,使用 browser_evaluate 执行JavaScript代码

工具分类

导航: browser_navigate_to_url, browser_search_web, browser_go_back, browser_wait 交互: browser_click_element, browser_input_text, browser_send_keys, browser_upload_file 视图: browser_scroll_page, browser_find_text, browser_screenshot 提取: browser_extract_content, browser_get_page_html, browser_get_selector_map 高级: browser_evaluate, browser_ensure_login_with_cookies, browser_wait_for_user_action