Scholar Search Workflow
This skill only uses arXiv as the data source. The workflow is fixed:
- 1. Read user input and parse the search intent.
- Call the arXiv API (via
arxiv_search). - Evaluate result quality and decide whether another search round is needed.
- Output results using the required template.
0) File Layout (Overview)
| File Path | Purpose | When to Check |
|---|
| INLINECODE1 | Main entry: task parsing, query syntax, calling conventions, quality control | Check first at the beginning of every task |
1) Parse User Search Requirements
Extract the following constraints first:
- 1. Topic keywords (Chinese or English).
- Time preference (for example: "latest", "this year", "last three years").
- Number of results (for example: 5, 10, 20).
- Output goal (paper discovery, comparison, or brief survey).
- Output language (Chinese or English).
Keyword strategy:
- 1. Use a broad query in round one (topic terms only).
- Add constraint terms in round two (method terms, task terms, category terms).
- If results are too few, switch to synonyms or broader terms.
2) arXiv API Guide (Built-in)
2.1 API Endpoint
- 1. Base endpoint: INLINECODE2
- Request methods: GET (common), POST (optional when parameters are very long)
2.2 Core Parameters
- 1.
search_query: query expression - INLINECODE4 : comma-separated list of arXiv IDs
- INLINECODE5 : pagination offset (0-based)
- INLINECODE6 : number of returned entries
- INLINECODE7 :
relevance / lastUpdatedDate / INLINECODE10 - INLINECODE11 :
ascending / INLINECODE13
2.3 search_query Syntax
Common field prefixes:
- 1.
ti (title) - INLINECODE16 (author)
- INLINECODE17 (abstract)
- INLINECODE18 (category)
- INLINECODE19 (all fields)
Boolean operators:
- 1. INLINECODE20
- INLINECODE21
- INLINECODE22
Time syntax (submittedDate):
- 1. Range: INLINECODE24
- Specific day: INLINECODE25
2.4 Direct URL Examples
- 1. Topic query: INLINECODE26
- Combined query: INLINECODE27
- Paginated query: INLINECODE28
- Sorted query: INLINECODE29
2.5 Rate Limits and Stability (Must Follow)
- 1. Keep request frequency at no more than one request every 3 seconds.
- Use only one active connection at a time.
- Avoid high-frequency repeated queries; reuse existing results whenever possible.
3) Calling Conventions (Must Match Actual Use)
Standard call example:
CODEBLOCK0
Parameter notes:
- 1.
search_query: arXiv query expression (supports field prefixes and boolean operators). - INLINECODE31 : pagination offset (0-based).
- INLINECODE32 : number of returned entries; recommend
5-20. - INLINECODE34 : recommend
submittedDate or lastUpdatedDate. - INLINECODE37 : recommend
descending.
4) Decide Whether to Continue Searching
Run one more search round if any condition below is met:
- 1. Too few papers are returned (for example,
< 3). - Results are clearly off-topic.
- Key fields are frequently missing (title, link, abstract).
Stop searching when:
- 1. Result count reaches the target or an acceptable range.
- Topic relevance is high.
- Additional search rounds provide low value.
5) Output Requirements
Each paper must use the following structure:
CODEBLOCK1
Must follow:
- 1. Add a standalone line
----------- before every paper title. - Keep the title as a standalone level-1 header line.
- Keep "Paper Info" in a single line, separated by
|. - Keep the
PDF field:
- If a PDF exists: provide a direct link.
- If no PDF exists: remove the
PDF field.
- 5. Content must be based only on source metadata, abstract, or TLDR. No speculation.
- Do not add conclusions not explicitly supported by the source.
- All links must come from tool output. Do not fabricate or guess links.
- Do not fabricate venue, date, or citation count.
- Write "Research Content" and "Main Contributions" only from returned fields.
6) Failure Handling
- 1. API failure: state the reason and the strategies already attempted.
- No results: provide actionable keyword rewrite suggestions.
- Missing fields: explicitly mark as "unknown/missing"; do not fill with inferred data.
学术搜索工作流
本技能仅使用arXiv作为数据源。工作流程固定如下:
- 1. 读取用户输入并解析搜索意图。
- 调用arXiv API(通过arxiv_search)。
- 评估结果质量,判断是否需要再次搜索。
- 使用要求的模板输出结果。
0) 文件结构(概览)
| 文件路径 | 用途 | 何时检查 |
|---|
| SKILL.md | 主入口:任务解析、查询语法、调用约定、质量控制 | 每次任务开始时首先检查 |
1) 解析用户搜索需求
首先提取以下约束条件:
- 1. 主题关键词(中文或英文)。
- 时间偏好(例如:最新、今年、近三年)。
- 结果数量(例如:5、10、20)。
- 输出目标(论文发现、比较或简要综述)。
- 输出语言(中文或英文)。
关键词策略:
- 1. 第一轮使用宽泛查询(仅主题词)。
- 第二轮添加约束词(方法词、任务词、类别词)。
- 如果结果过少,切换为同义词或更宽泛的术语。
2) arXiv API 指南(内置)
2.1 API 端点
- 1. 基础端点:https://export.arxiv.org/api/query
- 请求方法:GET(常用)、POST(参数过长时可选)
2.2 核心参数
- 1. searchquery:查询表达式
- idlist:以逗号分隔的arXiv ID列表
- start:分页偏移量(从0开始)
- max_results:返回条目数量
- sortBy:relevance / lastUpdatedDate / submittedDate
- sortOrder:ascending / descending
2.3 search_query 语法
常用字段前缀:
- 1. ti(标题)
- au(作者)
- abs(摘要)
- cat(类别)
- all(所有字段)
布尔运算符:
- 1. AND
- OR
- ANDNOT
时间语法(submittedDate):
- 1. 范围:submittedDate:[200701+TO+200712]
- 特定日期:submittedDate:20101225
2.4 直接URL示例
- 1. 主题查询:https://export.arxiv.org/api/query?searchquery=all:electron
- 组合查询:https://export.arxiv.org/api/query?searchquery=au:delmaestro+AND+ti:checkerboard
- 分页查询:https://export.arxiv.org/api/query?searchquery=all:electron&start=0&maxresults=10
- 排序查询:https://export.arxiv.org/api/query?searchquery=ti:%22electron+thermal+conductivity%22&sortBy=lastUpdatedDate&sortOrder=descending
2.5 速率限制与稳定性(必须遵守)
- 1. 请求频率保持不超过每3秒一次。
- 每次仅使用一个活跃连接。
- 避免高频重复查询,尽可能复用已有结果。
3) 调用约定(必须与实际使用一致)
标准调用示例:
bash
curl -s https://export.arxiv.org/api/query?searchquery=all:multimodal+AND+cat:cs.CL&start=0&maxresults=10&sortBy=submittedDate&sortOrder=descending
参数说明:
- 1. searchquery:arXiv查询表达式(支持字段前缀和布尔运算符)。
- start:分页偏移量(从0开始)。
- maxresults:返回条目数量;建议5-20。
- sortBy:建议使用submittedDate或lastUpdatedDate。
- sortOrder:建议使用descending。
4) 判断是否继续搜索
满足以下任一条件时,再进行一轮搜索:
- 1. 返回论文过少(例如,< 3篇)。
- 结果明显偏离主题。
- 关键字段频繁缺失(标题、链接、摘要)。
停止搜索的条件:
- 1. 结果数量达到目标或可接受范围。
- 主题相关性高。
- 额外搜索轮次价值较低。
5) 输出要求
每篇论文必须使用以下结构:
markdown
{序号}. {论文标题}
论文信息:来源/出处:{期刊、会议或来源} | 发表日期:{yyyy-mm-dd 或未知} | 来源:{来源名称} | PDF:PDF链接
研究内容
{基于论文内容的1-2句客观描述}
主要贡献
必须遵守:
- 1. 每篇论文标题前添加独立行-----------。
- 标题作为独立的一级标题行。
- 论文信息保持单行,用|分隔。
- PDF字段:
- 如果存在PDF:提供直接链接。
- 如果不存在PDF:移除PDF字段。
- 5. 内容必须仅基于源元数据、摘要或TLDR。不得推测。
- 不得添加源数据未明确支持的结论。
- 所有链接必须来自工具输出。不得编造或猜测链接。
- 不得编造出处、日期或引用次数。
- 研究内容和主要贡献仅根据返回字段撰写。
6) 失败处理
- 1. API失败:说明原因及已尝试的策略。
- 无结果:提供可操作的关键词改写建议。
- 字段缺失:明确标记为未知/缺失;不得填充推断数据。