Jerry

ArXiv Search Collector

專業領域v0.1.1
作者:Jerry✓ SkillHub 認證更新於 2026-05-11共 2 個版本 · 最新版本釋出於 2026-02-14arxiv-search-collector@user_6a9c635d/arxiv-search-collector
科研學術#Arxiv

據 AlphaMoat 統計,截至 2026-09,ArXiv Search Collector 累計下載 3,079 次、獲 1 個星標,在全部 5,078 個 AI 技能中排名第 3,679 位,在「專業領域」分類(465 個)中排名第 307 位。

累計安裝
105
累計下載
3079
星標
1
全站排名
#3,679
全站前 73% · 「專業領域」前 67%
平台累計安裝累計下載星標評論
ClawHub ↗983018--
SkillHub ↗10530791—

各平台的計數口徑不同,統計時間不一致。

這個技能是做什麼的

主文要求控制 API 併發並利用快取;隨附風險卡片指出路徑處理仍存在未解決問題,精心構造的執行名稱、標籤或選擇檔案可能導致讀寫超出目標目錄。應僅在隔離的臨時目錄使用可信輸入,並先修復路徑安全問題。

資料釋出於 2026-10-29

可以用來做什麼

  • 為一個研究主題規劃窄而相關的 arXiv 檢索式。
  • 篩選檢索結果併合並去重的論文後設資料。
  • 設計增量更新和相關性複核步驟。

什麼時候用

  • 需要由模型規劃檢索詞並篩選論文時。
  • 需要構建供後續論文處理流程使用的集合時。
  • 執行前需要檢查路徑處理、輸出目錄和輸入檔案安全時。

示例提示詞

以下是根據技能文件生成的示例,不代表實際執行結果。

為一個研究主題草擬多個相互補充的 arXiv 檢索式。
列出執行論文采集器前應檢查的路徑和檔案安全事項。

月度資料趨勢

累計下載3079
1321226532092026-03 · 累計下載 14512026-05 · 累計下載 22102026-06 · 累計下載 24032026-07 · 累計下載 27012026-08 · 累計下載 28592026-09 · 累計下載 307926-0326-09
星標1
0112026-03 · 星標 -2026-05 · 星標 12026-06 · 星標 12026-07 · 星標 12026-08 · 星標 12026-09 · 星標 126-0326-09

2026-09 起統計方法調整:同名技能按作者分別統計,並覆蓋全部技能。圖中虛線為調整前的月份,與之後的資料不直接比較,也不計算跨越調整的增長。

月份累計下載環比星標
2026-093079—1
2026-082859+5.8%1
2026-072701+12.4%1
2026-062403+8.7%1
2026-052210—1
2026-031451—-

SKILL.md 原文

以下是作者釋出的原始檔案,按純文字顯示,本站未做修改或稽核;其中的連結不可點選,命令請核實後再執行。抓取於 2026-10-23。

8.8 KB · ClawHub v0.1.1
---
name: arxiv-search-collector
description: "Model-driven arXiv retrieval workflow for building a paper set with a manual language parameter: initialize a run, fetch metadata for each model-designed query, let the model filter irrelevant items per query by keep indexes, then merge and dedupe into per-paper metadata directories. Use when query planning and relevance filtering should be done by the model, not rule-based heuristics."
---

# ArXiv Search Collector

Use this skill when you want model-led query planning and model-led relevance filtering.

## Core Principle
展開全部(共 242 行)
Scripts are tools. The model performs the reasoning and decisions:

1. Expand the original topic into multiple focused queries.
2. Run one fetch command per query.
3. Read each query result list and decide keep indexes.
4. Merge kept items and dedupe with one script.

## Step 1: Initialize Run

```bash
python3 scripts/init_collection_run.py \
  --output-root /path/to/data \
  --topic "LLM applications in Lean 4 formalization" \
  --keywords "Lean 4,LLM,formalization" \
  --categories "cs.AI,cs.LO" \
  --target-range 5-10 \
  --lookback 30d \
  --language English
```

This creates a run directory with `task_meta.json`, `task_meta.md`, `query_results/`, and `query_selection/`.

## Language Parameter

- `--language` must be set manually for each collection run.
- Use the same language value across all collector scripts for consistency.
- If `--language` is non-English (for example `Chinese`), generated markdown files are written in that language:
  - `task_meta.md`
  - `query_results/<label>.md`
  - `<arxiv_id>/metadata.md`
  - `papers_index.md`

## Query Writing Requirements

Follow these rules before running per-query fetch:

1. Determine query count from final target range.
- Prefer `3` queries for small/medium targets (`2-5`, `5-10`).
- Prefer `4` queries for larger targets (`10-50` or above).
- Avoid writing too many low-quality queries.

2. Allocate target budget to each query, then oversample.
- Let `target_max` be the upper bound in target range.
- Compute `target_per_query = ceil(target_max / query_count)`.
- Fetch each query with `max_results = target_per_query * 2` (or `* 3` when recall is more important).
- Example: target `5-10`, query count `3` -> `target_per_query=4` -> each query fetches `8-12`.

3. Keep one original-theme query, then add normalized/synonym expansions.
- Query 1 keeps original topic wording.
- Remaining queries use normalized terms and close synonyms.
- Prefer concise noun phrases that match arXiv indexing behavior.

4. Use `OR` inside the same semantic group (synonyms), and `AND` across groups.
- Same-group synonyms should be connected with `OR` to increase recall.
  - Example group A (model terms): `LLM OR "large language model" OR AI`.
  - Example group B (Lean terms): `"Lean 4" OR Lean OR "formal language"`.
- Different semantic groups should be connected with `AND` to keep relevance.
  - Example: `(LLM-group) AND (Lean-group)`.
- Recommended pattern:
  - `(<domain terms with OR>) AND (<method/model terms with OR>) [AND <optional constraint terms>]`

### Query Examples (arXiv API-ready)

Theme A: `LLM applications in Lean 4 formalization`
- `all:"LLM applications in Lean 4 formalization"`
- `(all:"Lean 4" OR all:"Lean" OR all:"formal language") AND (all:"LLM" OR all:"large language model" OR all:"AI")`
- `(all:"Lean" OR all:"formalization") AND (all:"LLM" OR all:"large language model") AND all:"theorem proving"`
- `(all:"Lean" OR all:"proof assistant") AND (all:"AI" OR all:"LLM")`

Theme B: `agentic tool use for code generation`
- `all:"agentic tool use code generation"`
- `(all:"agentic" OR all:"autonomous agent") AND (all:"LLM" OR all:"large language model")`
- `(all:"tool use" OR all:"function calling") AND (all:"coding assistant" OR all:"code generation")`

Theme C: `multimodal reasoning with retrieval`
- `all:"multimodal reasoning retrieval"`
- `(all:"multimodal" OR all:"vision language") AND (all:"retrieval" OR all:"RAG")`
- `(all:"multimodal model" OR all:"vision language model") AND (all:"reasoning" OR all:"tool use")`

## Step 2: Fetch One Query at a Time

Model defines queries manually, for example:

- `all:"Lean 4"`
- `all:"LLM formalization"`
- `all:"AI formal verification"`

Recommended batch mode (safe defaults, serial execution):

```bash
python3 scripts/fetch_queries_batch.py \
  --run-dir /path/to/run-dir \
  --plan-json /path/to/query_plan.json
```

In batch mode, the script auto-applies:

- serial API calls
- `--min-interval-sec 5`
- `--retry-max 4`
- `--retry-base-sec 5`
- `--retry-max-sec 120`
- `--retry-jitter-sec 1`
- per-run rate-state file (`<run_dir>/.runtime/arxiv_api_state.json`) for throttling
- auto `max_results` from `target_range` and query count (default oversample `x2`, cap `60`)
- default language/categories from `task_meta.json`

Minimal `query_plan.json` only needs `label` and `query`.
See `references/query-plan-format.md`.
You normally do not need to set fetch-control args manually.

If you need one-by-one manual fetch, run each query:

```bash
python3 scripts/fetch_query_metadata.py \
  --run-dir /path/to/run-dir \
  --label lean4 \
  --query 'all:"Lean 4"' \
  --max-results 30 \
  --min-interval-sec 5 \
  --retry-max 4 \
  --language English
```

Output files:

- `query_results/<label>.json` (indexed full metadata list)
- `query_results/<label>.md` (human-readable preview)

Date range is applied directly in arXiv API `search_query` via `submittedDate:[... TO ...]`.
No second local date-filter pass is performed.

Rate-limit controls in `fetch_query_metadata.py`:

- `--min-interval-sec` (default `5.0`)
- `--retry-max` (default `4`)
- `--retry-base-sec` (default `5.0`)
- `--retry-max-sec` (default `120.0`)
- `--retry-jitter-sec` (default `1.0`)
- `--rate-state-path` (optional override; default is `<run_dir>/.runtime/arxiv_api_state.json`)
- `--force` to bypass cache and re-fetch

## Step 3: Model Filters Relevance

For each query list, the model reads indexed results and decides what to keep.

Use keep specs by index and/or arXiv ID when merging.
To explicitly drop one weak query in later iterations, set that label to an empty keep list in `selection-json`.

## Step 4: Merge and Dedupe

```bash
python3 scripts/merge_selected_papers.py \
  --run-dir /path/to/run-dir \
  --keep lean4:0,2,4 \
  --keep llm-formalization:1,3 \
  --language English
```

or with `selection-json`:

```json
{
  "lean4-round1": [0, 2, 4],
  "lean4-round2": [],
  "formalization-round2": [1, 3, 5]
}
```

An empty list means this query label is intentionally dropped (`keep 0`).

This writes final outputs:

- `<arxiv_id>/metadata.json`
- `<arxiv_id>/metadata.md`
- `papers_index.json`
- `papers_index.md`

## Step 5: Iterative Retry Loop (Incremental)

If relevance is weak or final count is insufficient after Step 4, iterate:

1. Review `papers_index.md` and per-paper metadata quality.
2. Adjust query plan (usually broaden with additional synonym `OR` terms, keep cross-group `AND` constraints).
3. Fetch additional query results with new labels.
4. Re-run merge in incremental mode:

```bash
python3 scripts/merge_selected_papers.py \
  --run-dir /path/to/run-dir \
  --incremental \
  --selection-json /path/to/updated_selection.json \
  --language English
```

Incremental behavior:

- Previous label selections are loaded from `query_selection/selected_by_query.json`.
- Labels provided in the new `selection-json` override previous selections for those labels.
- New labels can be added.
- Old labels can be dropped by setting `[]`.

Stop retrying when:

- relevance is acceptable, or
- additional broadened queries mainly add low-relevance papers.

If relevant papers are genuinely scarce, it is valid to finish below the original minimum target range.

## Notes

- Keep API concurrency conservative by controlling query count and `--max-results`.
- Keep per-query fetch serial (no parallel API calls in Stage A).
- Reuse cache by default for identical query/date/request settings; only use `--force` when necessary.
- Prefer default run-local rate-state so all steps in the same run share one cooldown/throttling state.
- If arXiv API returns `429 Too Many Requests`, retry later and/or increase `--min-interval-sec`.
- Prefer explicit, narrow queries and let the model filter aggressively.
- Use `references/io-contract.md` for exact files and schema.

## Related Skills

This skill is a sub-skill of `arxiv-summarizer-orchestrator`.

Pipeline position:

1. Step 1 (collection): `arxiv-search-collector` (this skill)
2. Step 2 (per-paper processing): `arxiv-paper-processor`
3. Step 3 (batch reporting): `arxiv-batch-reporter`

This skill produces the initial paper-set structure and metadata that Stage B and Stage C depend on.

「專業領域」分類下的熱門技能

資料月份:2026-09 · 下載/星標/安裝數聚合自公開技能註冊庫(ClawHub、SkillHub),按月更新。口徑說明見資料方法。