@wentorai/research-plugins 1.2.3 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +29 -33
- package/openclaw.plugin.json +10 -3
- package/package.json +2 -5
- package/skills/analysis/dataviz/SKILL.md +25 -0
- package/skills/analysis/dataviz/chart-image-generator/SKILL.md +1 -1
- package/skills/analysis/econometrics/SKILL.md +23 -0
- package/skills/analysis/econometrics/robustness-checks/SKILL.md +1 -1
- package/skills/analysis/statistics/SKILL.md +21 -0
- package/skills/analysis/statistics/data-anomaly-detection/SKILL.md +1 -1
- package/skills/analysis/statistics/ml-experiment-tracker/SKILL.md +1 -1
- package/skills/analysis/statistics/{senior-data-scientist-guide → modeling-strategy-guide}/SKILL.md +5 -5
- package/skills/analysis/wrangling/SKILL.md +21 -0
- package/skills/analysis/wrangling/csv-data-analyzer/SKILL.md +1 -1
- package/skills/analysis/wrangling/data-cog-guide/SKILL.md +1 -1
- package/skills/domains/ai-ml/SKILL.md +37 -0
- package/skills/domains/biomedical/SKILL.md +28 -0
- package/skills/domains/biomedical/genomas-guide/SKILL.md +1 -1
- package/skills/domains/biomedical/med-researcher-guide/SKILL.md +1 -1
- package/skills/domains/biomedical/medgeclaw-guide/SKILL.md +1 -1
- package/skills/domains/business/SKILL.md +17 -0
- package/skills/domains/business/architecture-design-guide/SKILL.md +1 -1
- package/skills/domains/chemistry/SKILL.md +19 -0
- package/skills/domains/chemistry/computational-chemistry-guide/SKILL.md +1 -1
- package/skills/domains/cs/SKILL.md +21 -0
- package/skills/domains/ecology/SKILL.md +16 -0
- package/skills/domains/economics/SKILL.md +20 -0
- package/skills/domains/economics/post-labor-economics/SKILL.md +1 -1
- package/skills/domains/economics/pricing-psychology-guide/SKILL.md +1 -1
- package/skills/domains/education/SKILL.md +19 -0
- package/skills/domains/education/academic-study-methods/SKILL.md +1 -1
- package/skills/domains/education/edumcp-guide/SKILL.md +1 -1
- package/skills/domains/finance/SKILL.md +19 -0
- package/skills/domains/finance/akshare-finance-data/SKILL.md +1 -1
- package/skills/domains/finance/options-analytics-agent-guide/SKILL.md +1 -1
- package/skills/domains/finance/stata-accounting-research/SKILL.md +1 -1
- package/skills/domains/geoscience/SKILL.md +17 -0
- package/skills/domains/humanities/SKILL.md +16 -0
- package/skills/domains/humanities/history-research-guide/SKILL.md +1 -1
- package/skills/domains/humanities/political-history-guide/SKILL.md +1 -1
- package/skills/domains/law/SKILL.md +19 -0
- package/skills/domains/math/SKILL.md +17 -0
- package/skills/domains/pharma/SKILL.md +17 -0
- package/skills/domains/physics/SKILL.md +16 -0
- package/skills/domains/social-science/SKILL.md +17 -0
- package/skills/domains/social-science/sociology-research-methods/SKILL.md +1 -1
- package/skills/literature/discovery/SKILL.md +20 -0
- package/skills/literature/discovery/paper-recommendation-guide/SKILL.md +1 -1
- package/skills/literature/discovery/semantic-paper-radar/SKILL.md +1 -1
- package/skills/literature/fulltext/SKILL.md +26 -0
- package/skills/literature/metadata/SKILL.md +35 -0
- package/skills/literature/metadata/doi-content-negotiation/SKILL.md +4 -0
- package/skills/literature/metadata/doi-resolution-guide/SKILL.md +4 -0
- package/skills/literature/metadata/orcid-api/SKILL.md +4 -0
- package/skills/literature/metadata/orcid-integration-guide/SKILL.md +4 -0
- package/skills/literature/search/SKILL.md +43 -0
- package/skills/literature/search/paper-search-mcp-guide/SKILL.md +1 -1
- package/skills/research/automation/SKILL.md +21 -0
- package/skills/research/deep-research/SKILL.md +24 -0
- package/skills/research/deep-research/auto-deep-research-guide/SKILL.md +1 -1
- package/skills/research/deep-research/in-depth-research-guide/SKILL.md +1 -1
- package/skills/research/funding/SKILL.md +20 -0
- package/skills/research/methodology/SKILL.md +24 -0
- package/skills/research/paper-review/SKILL.md +19 -0
- package/skills/research/paper-review/paper-critique-framework/SKILL.md +1 -1
- package/skills/tools/code-exec/SKILL.md +18 -0
- package/skills/tools/diagram/SKILL.md +20 -0
- package/skills/tools/document/SKILL.md +21 -0
- package/skills/tools/knowledge-graph/SKILL.md +21 -0
- package/skills/tools/ocr-translate/SKILL.md +18 -0
- package/skills/tools/ocr-translate/handwriting-recognition-guide/SKILL.md +2 -0
- package/skills/tools/ocr-translate/latex-ocr-guide/SKILL.md +2 -0
- package/skills/tools/scraping/SKILL.md +17 -0
- package/skills/writing/citation/SKILL.md +33 -0
- package/skills/writing/citation/zotfile-attachment-guide/SKILL.md +2 -0
- package/skills/writing/composition/SKILL.md +22 -0
- package/skills/writing/composition/research-paper-writer/SKILL.md +1 -1
- package/skills/writing/composition/scientific-writing-wrapper/SKILL.md +1 -1
- package/skills/writing/latex/SKILL.md +22 -0
- package/skills/writing/latex/academic-writing-latex/SKILL.md +1 -1
- package/skills/writing/latex/latex-drawing-guide/SKILL.md +1 -1
- package/skills/writing/polish/SKILL.md +20 -0
- package/skills/writing/polish/chinese-text-humanizer/SKILL.md +1 -1
- package/skills/writing/templates/SKILL.md +22 -0
- package/skills/writing/templates/beamer-presentation-guide/SKILL.md +1 -1
- package/skills/writing/templates/scientific-article-pdf/SKILL.md +1 -1
- package/skills/analysis/dataviz/citation-map-guide/SKILL.md +0 -184
- package/skills/analysis/dataviz/data-visualization-principles/SKILL.md +0 -171
- package/skills/analysis/econometrics/empirical-paper-analysis/SKILL.md +0 -192
- package/skills/analysis/econometrics/panel-data-regression-workflow/SKILL.md +0 -267
- package/skills/analysis/econometrics/stata-regression/SKILL.md +0 -117
- package/skills/analysis/statistics/general-statistics-guide/SKILL.md +0 -226
- package/skills/analysis/statistics/infiagent-benchmark-guide/SKILL.md +0 -106
- package/skills/analysis/statistics/pywayne-statistics-guide/SKILL.md +0 -192
- package/skills/analysis/statistics/quantitative-methods-guide/SKILL.md +0 -193
- package/skills/analysis/wrangling/claude-data-analysis-guide/SKILL.md +0 -100
- package/skills/analysis/wrangling/open-data-scientist-guide/SKILL.md +0 -197
- package/skills/domains/ai-ml/annotated-dl-papers-guide/SKILL.md +0 -159
- package/skills/domains/humanities/digital-humanities-methods/SKILL.md +0 -232
- package/skills/domains/law/legal-research-methods/SKILL.md +0 -190
- package/skills/domains/social-science/sociology-research-guide/SKILL.md +0 -238
- package/skills/literature/discovery/arxiv-paper-monitoring/SKILL.md +0 -233
- package/skills/literature/discovery/paper-tracking-guide/SKILL.md +0 -211
- package/skills/literature/fulltext/zotero-scihub-guide/SKILL.md +0 -168
- package/skills/literature/search/arxiv-osiris/SKILL.md +0 -199
- package/skills/literature/search/deepgit-search-guide/SKILL.md +0 -147
- package/skills/literature/search/multi-database-literature-search/SKILL.md +0 -198
- package/skills/literature/search/papers-chat-guide/SKILL.md +0 -194
- package/skills/literature/search/pasa-paper-search-guide/SKILL.md +0 -138
- package/skills/literature/search/scientify-literature-survey/SKILL.md +0 -203
- package/skills/research/automation/ai-scientist-guide/SKILL.md +0 -228
- package/skills/research/automation/coexist-ai-guide/SKILL.md +0 -149
- package/skills/research/automation/foam-agent-guide/SKILL.md +0 -203
- package/skills/research/automation/research-paper-orchestrator/SKILL.md +0 -254
- package/skills/research/deep-research/academic-deep-research/SKILL.md +0 -190
- package/skills/research/deep-research/cognitive-kernel-guide/SKILL.md +0 -200
- package/skills/research/deep-research/corvus-research-guide/SKILL.md +0 -132
- package/skills/research/deep-research/deep-research-pro/SKILL.md +0 -213
- package/skills/research/deep-research/deep-research-work/SKILL.md +0 -204
- package/skills/research/deep-research/research-cog/SKILL.md +0 -153
- package/skills/research/methodology/academic-mentor-guide/SKILL.md +0 -169
- package/skills/research/methodology/deep-innovator-guide/SKILL.md +0 -242
- package/skills/research/methodology/research-pipeline-units-guide/SKILL.md +0 -169
- package/skills/research/paper-review/paper-compare-guide/SKILL.md +0 -238
- package/skills/research/paper-review/paper-digest-guide/SKILL.md +0 -240
- package/skills/research/paper-review/paper-research-assistant/SKILL.md +0 -231
- package/skills/research/paper-review/research-quality-filter/SKILL.md +0 -261
- package/skills/tools/code-exec/contextplus-mcp-guide/SKILL.md +0 -110
- package/skills/tools/diagram/clawphd-guide/SKILL.md +0 -149
- package/skills/tools/diagram/scientific-graphical-abstract/SKILL.md +0 -201
- package/skills/tools/document/md2pdf-xelatex/SKILL.md +0 -212
- package/skills/tools/document/openpaper-guide/SKILL.md +0 -232
- package/skills/tools/document/qq-connect/SKILL.md +0 -227
- package/skills/tools/document/weknora-guide/SKILL.md +0 -216
- package/skills/tools/knowledge-graph/mimir-memory-guide/SKILL.md +0 -135
- package/skills/tools/knowledge-graph/open-webui-tools-guide/SKILL.md +0 -156
- package/skills/tools/ocr-translate/formula-recognition-guide/SKILL.md +0 -367
- package/skills/tools/ocr-translate/math-equation-renderer/SKILL.md +0 -198
- package/skills/tools/scraping/api-data-collection-guide/SKILL.md +0 -301
- package/skills/writing/citation/academic-citation-manager-guide/SKILL.md +0 -182
- package/skills/writing/composition/opendraft-thesis-guide/SKILL.md +0 -200
- package/skills/writing/composition/paper-debugger-guide/SKILL.md +0 -143
- package/skills/writing/composition/paperforge-guide/SKILL.md +0 -205
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: arxiv-paper-monitoring
|
|
3
|
-
description: "Set up automated monitoring for new arXiv papers in your research area"
|
|
4
|
-
metadata:
|
|
5
|
-
openclaw:
|
|
6
|
-
emoji: "👀"
|
|
7
|
-
category: "literature"
|
|
8
|
-
subcategory: "discovery"
|
|
9
|
-
keywords: ["arxiv monitoring", "paper alerts", "research tracking", "new papers", "literature monitoring", "RSS feeds"]
|
|
10
|
-
source: "https://clawhub.ai/arxiv-watcher"
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# arXiv Paper Monitoring
|
|
14
|
-
|
|
15
|
-
## Overview
|
|
16
|
-
|
|
17
|
-
Staying current with new preprints in your field is critical for active researchers. This guide covers multiple approaches to monitoring arXiv for new papers: RSS feeds, email alerts, API-based scripts, and third-party services. Choose based on your needs: passive monitoring (RSS/email) for broad awareness, or active filtering (scripts) for high-precision tracking.
|
|
18
|
-
|
|
19
|
-
## Method 1: arXiv RSS Feeds
|
|
20
|
-
|
|
21
|
-
The simplest approach. arXiv provides RSS feeds for every category:
|
|
22
|
-
|
|
23
|
-
```
|
|
24
|
-
Feed URL pattern:
|
|
25
|
-
https://rss.arxiv.org/rss/{category}
|
|
26
|
-
|
|
27
|
-
Examples:
|
|
28
|
-
https://rss.arxiv.org/rss/cs.CL — Computation and Language
|
|
29
|
-
https://rss.arxiv.org/rss/cs.AI — Artificial Intelligence
|
|
30
|
-
https://rss.arxiv.org/rss/stat.ML — Machine Learning (Statistics)
|
|
31
|
-
https://rss.arxiv.org/rss/q-fin.ST — Statistical Finance
|
|
32
|
-
https://rss.arxiv.org/rss/econ.EM — Econometrics
|
|
33
|
-
```
|
|
34
|
-
|
|
35
|
-
**Setup in an RSS reader** (Feedly, Inoreader, NetNewsWire):
|
|
36
|
-
1. Add the feed URL for each category you follow
|
|
37
|
-
2. Create a folder "arXiv" to group feeds
|
|
38
|
-
3. Check daily — new papers appear Monday-Friday
|
|
39
|
-
|
|
40
|
-
## Method 2: arXiv Email Alerts
|
|
41
|
-
|
|
42
|
-
```
|
|
43
|
-
1. Go to https://arxiv.org/help/subscribe
|
|
44
|
-
2. Create/login to your arXiv account
|
|
45
|
-
3. Navigate to "Email Notifications" in settings
|
|
46
|
-
4. Select categories to subscribe to
|
|
47
|
-
5. Choose frequency: daily digest
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
## Method 3: Python Monitoring Script
|
|
51
|
-
|
|
52
|
-
For custom filtering with keyword matching:
|
|
53
|
-
|
|
54
|
-
```python
|
|
55
|
-
import arxiv
|
|
56
|
-
import json
|
|
57
|
-
from datetime import datetime, timedelta
|
|
58
|
-
from pathlib import Path
|
|
59
|
-
|
|
60
|
-
class ArxivMonitor:
|
|
61
|
-
"""Monitor arXiv for new papers matching your research interests."""
|
|
62
|
-
|
|
63
|
-
def __init__(self, config_path: str = "monitor_config.json"):
|
|
64
|
-
with open(config_path) as f:
|
|
65
|
-
self.config = json.load(f)
|
|
66
|
-
self.seen_file = Path("seen_papers.json")
|
|
67
|
-
self.seen = json.loads(self.seen_file.read_text()) if self.seen_file.exists() else []
|
|
68
|
-
|
|
69
|
-
def check_new_papers(self) -> list:
|
|
70
|
-
"""Fetch and filter new papers based on config."""
|
|
71
|
-
results = []
|
|
72
|
-
client = arxiv.Client()
|
|
73
|
-
|
|
74
|
-
for track in self.config["tracks"]:
|
|
75
|
-
query = self._build_query(track)
|
|
76
|
-
search = arxiv.Search(
|
|
77
|
-
query=query,
|
|
78
|
-
max_results=track.get("max_results", 50),
|
|
79
|
-
sort_by=arxiv.SortCriterion.SubmittedDate
|
|
80
|
-
)
|
|
81
|
-
|
|
82
|
-
for paper in client.results(search):
|
|
83
|
-
paper_id = paper.entry_id.split("/")[-1]
|
|
84
|
-
if paper_id in self.seen:
|
|
85
|
-
continue
|
|
86
|
-
|
|
87
|
-
# Keyword matching in title + abstract
|
|
88
|
-
text = f"{paper.title} {paper.summary}".lower()
|
|
89
|
-
if self._matches_keywords(text, track.get("keywords", [])):
|
|
90
|
-
results.append({
|
|
91
|
-
"id": paper_id,
|
|
92
|
-
"title": paper.title,
|
|
93
|
-
"authors": [a.name for a in paper.authors[:5]],
|
|
94
|
-
"abstract": paper.summary[:500],
|
|
95
|
-
"url": paper.entry_id,
|
|
96
|
-
"pdf": paper.pdf_url,
|
|
97
|
-
"published": paper.published.isoformat(),
|
|
98
|
-
"track": track["name"],
|
|
99
|
-
"categories": paper.categories
|
|
100
|
-
})
|
|
101
|
-
self.seen.append(paper_id)
|
|
102
|
-
|
|
103
|
-
# Save seen list
|
|
104
|
-
self.seen_file.write_text(json.dumps(self.seen[-5000:])) # keep last 5000
|
|
105
|
-
return results
|
|
106
|
-
|
|
107
|
-
def _build_query(self, track: dict) -> str:
|
|
108
|
-
cats = " OR ".join(f"cat:{c}" for c in track.get("categories", []))
|
|
109
|
-
return f"({cats})" if cats else track.get("query", "")
|
|
110
|
-
|
|
111
|
-
def _matches_keywords(self, text: str, keywords: list) -> bool:
|
|
112
|
-
if not keywords:
|
|
113
|
-
return True # no filter = include all
|
|
114
|
-
return any(kw.lower() in text for kw in keywords)
|
|
115
|
-
|
|
116
|
-
def format_digest(self, papers: list) -> str:
|
|
117
|
-
"""Format papers as a readable digest."""
|
|
118
|
-
if not papers:
|
|
119
|
-
return "No new papers matching your criteria today."
|
|
120
|
-
|
|
121
|
-
lines = [f"# arXiv Digest — {datetime.now().strftime('%Y-%m-%d')}",
|
|
122
|
-
f"**{len(papers)} new papers found**\n"]
|
|
123
|
-
|
|
124
|
-
for track_name in set(p["track"] for p in papers):
|
|
125
|
-
track_papers = [p for p in papers if p["track"] == track_name]
|
|
126
|
-
lines.append(f"\n## {track_name} ({len(track_papers)} papers)\n")
|
|
127
|
-
for p in track_papers:
|
|
128
|
-
authors = ", ".join(p["authors"][:3])
|
|
129
|
-
if len(p["authors"]) > 3:
|
|
130
|
-
authors += " et al."
|
|
131
|
-
lines.append(f"### [{p['title']}]({p['url']})")
|
|
132
|
-
lines.append(f"*{authors}* — {p['published'][:10]}")
|
|
133
|
-
lines.append(f"> {p['abstract'][:200]}...\n")
|
|
134
|
-
|
|
135
|
-
return "\n".join(lines)
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
### Configuration File
|
|
139
|
-
|
|
140
|
-
```json
|
|
141
|
-
{
|
|
142
|
-
"tracks": [
|
|
143
|
-
{
|
|
144
|
-
"name": "RAG & Retrieval",
|
|
145
|
-
"categories": ["cs.CL", "cs.IR"],
|
|
146
|
-
"keywords": ["retrieval augmented", "RAG", "dense retrieval", "passage retrieval"],
|
|
147
|
-
"max_results": 100
|
|
148
|
-
},
|
|
149
|
-
{
|
|
150
|
-
"name": "LLM Agents",
|
|
151
|
-
"categories": ["cs.AI", "cs.CL"],
|
|
152
|
-
"keywords": ["language model agent", "tool use", "function calling", "agentic"],
|
|
153
|
-
"max_results": 100
|
|
154
|
-
},
|
|
155
|
-
{
|
|
156
|
-
"name": "Causal Inference",
|
|
157
|
-
"categories": ["econ.EM", "stat.ME"],
|
|
158
|
-
"keywords": ["difference-in-differences", "regression discontinuity", "instrumental variable"],
|
|
159
|
-
"max_results": 50
|
|
160
|
-
}
|
|
161
|
-
]
|
|
162
|
-
}
|
|
163
|
-
```
|
|
164
|
-
|
|
165
|
-
### Cron Job Setup
|
|
166
|
-
|
|
167
|
-
```bash
|
|
168
|
-
# Run daily at 8 AM
|
|
169
|
-
# crontab -e
|
|
170
|
-
0 8 * * 1-5 cd /path/to/monitor && python run_monitor.py >> monitor.log 2>&1
|
|
171
|
-
```
|
|
172
|
-
|
|
173
|
-
```python
|
|
174
|
-
# run_monitor.py
|
|
175
|
-
from arxiv_monitor import ArxivMonitor
|
|
176
|
-
|
|
177
|
-
monitor = ArxivMonitor("monitor_config.json")
|
|
178
|
-
papers = monitor.check_new_papers()
|
|
179
|
-
digest = monitor.format_digest(papers)
|
|
180
|
-
|
|
181
|
-
# Save digest
|
|
182
|
-
with open(f"digests/{datetime.now().strftime('%Y-%m-%d')}.md", "w") as f:
|
|
183
|
-
f.write(digest)
|
|
184
|
-
|
|
185
|
-
print(f"Found {len(papers)} new papers")
|
|
186
|
-
```
|
|
187
|
-
|
|
188
|
-
## Method 4: Third-Party Services
|
|
189
|
-
|
|
190
|
-
| Service | Features | Price |
|
|
191
|
-
|---------|----------|-------|
|
|
192
|
-
| **Semantic Scholar Alerts** | Follow authors, topics, citation alerts | Free |
|
|
193
|
-
| **Google Scholar Alerts** | Email when new papers match query | Free |
|
|
194
|
-
| **ResearchRabbit** | AI-recommended papers, citation network | Free |
|
|
195
|
-
| **Connected Papers** | Visual paper discovery from seed paper | Free |
|
|
196
|
-
| **Arxiv Sanity** (Karpathy) | ML-filtered arXiv papers | Free |
|
|
197
|
-
| **Papers With Code** | Papers + code repositories | Free |
|
|
198
|
-
| **Hugging Face Daily Papers** | Community-curated ML papers | Free |
|
|
199
|
-
|
|
200
|
-
### Setting Up Google Scholar Alerts
|
|
201
|
-
|
|
202
|
-
```
|
|
203
|
-
1. Go to https://scholar.google.com/scholar_alerts
|
|
204
|
-
2. Click "Create alert"
|
|
205
|
-
3. Enter search query (e.g., "retrieval augmented generation")
|
|
206
|
-
4. Set email frequency: daily or weekly
|
|
207
|
-
5. Google will email you when new matching papers appear
|
|
208
|
-
```
|
|
209
|
-
|
|
210
|
-
### Setting Up Semantic Scholar Alerts
|
|
211
|
-
|
|
212
|
-
```
|
|
213
|
-
1. Go to https://www.semanticscholar.org/
|
|
214
|
-
2. Create an account
|
|
215
|
-
3. Search for a paper or author
|
|
216
|
-
4. Click "Alert" → get notified of new citations or related papers
|
|
217
|
-
5. Use "Research Feeds" for topic-based monitoring
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
## Best Practices
|
|
221
|
-
|
|
222
|
-
- **Limit scope**: Monitor 3-5 categories max; use keyword filtering to avoid noise
|
|
223
|
-
- **Weekly review**: Even with daily alerts, do a focused weekly review session
|
|
224
|
-
- **Triage quickly**: Title scan → abstract scan → full read (80/15/5 ratio)
|
|
225
|
-
- **Track what you read**: Log papers in your citation manager immediately
|
|
226
|
-
- **Share with your lab**: Post weekly digest to a shared Slack channel or group chat
|
|
227
|
-
|
|
228
|
-
## References
|
|
229
|
-
|
|
230
|
-
- [arXiv RSS Feeds](https://info.arxiv.org/help/rss.html)
|
|
231
|
-
- [arXiv API Documentation](https://info.arxiv.org/help/api/)
|
|
232
|
-
- [Semantic Scholar Research Feeds](https://www.semanticscholar.org/product/research-feeds)
|
|
233
|
-
- [Google Scholar Alerts](https://scholar.google.com/scholar_alerts)
|
|
@@ -1,211 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: paper-tracking-guide
|
|
3
|
-
description: "Track new publications via RSS, alerts, and citation notifications"
|
|
4
|
-
metadata:
|
|
5
|
-
openclaw:
|
|
6
|
-
emoji: "🔔"
|
|
7
|
-
category: "literature"
|
|
8
|
-
subcategory: "discovery"
|
|
9
|
-
keywords: ["literature alert", "citation notification", "RSS feed", "new publication tracking", "related papers"]
|
|
10
|
-
source: "N/A"
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# Paper Tracking Guide
|
|
14
|
-
|
|
15
|
-
## Overview
|
|
16
|
-
|
|
17
|
-
Staying current with the literature is one of the most persistent challenges in academic research. With over 5 million new papers published annually across all disciplines, manual browsing of journals and preprint servers is neither scalable nor reliable. Researchers who set up automated tracking systems gain a significant advantage: they discover relevant work earlier, avoid duplicating existing results, and identify collaboration opportunities.
|
|
18
|
-
|
|
19
|
-
This guide covers five complementary strategies for tracking new publications: RSS feeds from preprint servers and journals, keyword-based alerts from search engines, citation tracking for monitoring who cites your work or key papers, social and community feeds, and AI-powered discovery tools. The goal is to build a personalized monitoring pipeline that delivers relevant papers to you daily with minimal noise.
|
|
20
|
-
|
|
21
|
-
Each strategy is described with setup instructions, tool recommendations, and configuration tips so you can have a working tracking system within an afternoon.
|
|
22
|
-
|
|
23
|
-
## RSS Feeds from Preprint Servers
|
|
24
|
-
|
|
25
|
-
RSS remains the most reliable method for monitoring preprint servers like arXiv, bioRxiv, and SSRN.
|
|
26
|
-
|
|
27
|
-
### arXiv RSS Setup
|
|
28
|
-
|
|
29
|
-
arXiv provides RSS feeds for every category and subcategory:
|
|
30
|
-
|
|
31
|
-
```
|
|
32
|
-
# Feed URL format
|
|
33
|
-
https://rss.arxiv.org/rss/{category}
|
|
34
|
-
|
|
35
|
-
# Examples
|
|
36
|
-
https://rss.arxiv.org/rss/cs.CL # Computation and Language
|
|
37
|
-
https://rss.arxiv.org/rss/cs.LG # Machine Learning
|
|
38
|
-
https://rss.arxiv.org/rss/stat.ML # Statistics: Machine Learning
|
|
39
|
-
https://rss.arxiv.org/rss/q-bio.GN # Genomics
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### bioRxiv and medRxiv
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
# bioRxiv new papers by subject
|
|
46
|
-
https://connect.biorxiv.org/biorxiv_xml.php?subject=neuroscience
|
|
47
|
-
|
|
48
|
-
# medRxiv new papers
|
|
49
|
-
https://connect.medrxiv.org/medrxiv_xml.php?subject=epidemiology
|
|
50
|
-
```
|
|
51
|
-
|
|
52
|
-
### Recommended RSS Readers
|
|
53
|
-
|
|
54
|
-
| Reader | Platform | Free Tier | Best Feature |
|
|
55
|
-
|--------|----------|-----------|-------------|
|
|
56
|
-
| Feedly | Web/Mobile | 100 feeds | AI prioritization |
|
|
57
|
-
| Inoreader | Web/Mobile | 150 feeds | Rules & filters |
|
|
58
|
-
| Miniflux | Self-hosted | Unlimited | Full control |
|
|
59
|
-
| NetNewsWire | macOS/iOS | Unlimited | Native, fast, open-source |
|
|
60
|
-
| Feedbin | Web | Paid only | Clean interface |
|
|
61
|
-
|
|
62
|
-
### Filtering High-Volume Feeds
|
|
63
|
-
|
|
64
|
-
For categories with 50+ daily papers, set up keyword filters in your RSS reader:
|
|
65
|
-
|
|
66
|
-
```
|
|
67
|
-
# Inoreader rule example
|
|
68
|
-
IF title contains "transformer" OR "attention mechanism"
|
|
69
|
-
AND title does NOT contain "survey" OR "review"
|
|
70
|
-
THEN star AND move to "Priority" folder
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
## Keyword-Based Alerts
|
|
74
|
-
|
|
75
|
-
### Google Scholar Alerts
|
|
76
|
-
|
|
77
|
-
1. Go to [scholar.google.com/scholar_alerts](https://scholar.google.com/scholar_alerts)
|
|
78
|
-
2. Click "Create alert"
|
|
79
|
-
3. Enter a search query using operators:
|
|
80
|
-
|
|
81
|
-
```
|
|
82
|
-
# Specific phrase
|
|
83
|
-
"graph neural network" "drug discovery"
|
|
84
|
-
|
|
85
|
-
# Author tracking
|
|
86
|
-
author:"Yoshua Bengio"
|
|
87
|
-
|
|
88
|
-
# Venue-specific
|
|
89
|
-
source:"Nature Machine Intelligence"
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
Tips:
|
|
93
|
-
- Create 5-10 focused alerts rather than 1-2 broad ones.
|
|
94
|
-
- Use quotation marks for exact phrases.
|
|
95
|
-
- Review and refine alerts monthly.
|
|
96
|
-
|
|
97
|
-
### Semantic Scholar Alerts
|
|
98
|
-
|
|
99
|
-
Semantic Scholar offers research feed customization:
|
|
100
|
-
|
|
101
|
-
1. Create an account at [semanticscholar.org](https://www.semanticscholar.org/)
|
|
102
|
-
2. Add papers to your library
|
|
103
|
-
3. The recommendation engine learns your interests
|
|
104
|
-
4. Enable weekly email digest
|
|
105
|
-
|
|
106
|
-
### PubMed Alerts (Biomedical)
|
|
107
|
-
|
|
108
|
-
```
|
|
109
|
-
# Create a saved search at pubmed.ncbi.nlm.nih.gov
|
|
110
|
-
# Example query with MeSH terms
|
|
111
|
-
("machine learning"[MeSH] OR "deep learning"[MeSH])
|
|
112
|
-
AND "drug discovery"[MeSH]
|
|
113
|
-
AND "2024/01/01"[Date - Publication] : "3000"[Date - Publication]
|
|
114
|
-
|
|
115
|
-
# Set up email alerts: Save search > Create alert > Weekly
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
## Citation Tracking
|
|
119
|
-
|
|
120
|
-
Citation tracking answers: "Who is building on this foundational paper?"
|
|
121
|
-
|
|
122
|
-
### Methods
|
|
123
|
-
|
|
124
|
-
| Method | Coverage | Real-time | Cost |
|
|
125
|
-
|--------|----------|-----------|------|
|
|
126
|
-
| Google Scholar "Cited by" alerts | Broad | Near real-time | Free |
|
|
127
|
-
| Semantic Scholar citation alerts | CS, biomedical | Weekly | Free |
|
|
128
|
-
| Web of Science citation reports | Comprehensive | Weekly | Institutional |
|
|
129
|
-
| Scopus citation alerts | Comprehensive | Configurable | Institutional |
|
|
130
|
-
| ResearchGate notifications | Author-based | Real-time | Free |
|
|
131
|
-
|
|
132
|
-
### Setting Up Google Scholar Citation Alerts
|
|
133
|
-
|
|
134
|
-
1. Search for the paper on Google Scholar.
|
|
135
|
-
2. Click "Cited by N" below the paper.
|
|
136
|
-
3. Click the envelope icon ("Create alert") at the top of the results page.
|
|
137
|
-
4. Receive an email whenever a new paper cites the tracked paper.
|
|
138
|
-
|
|
139
|
-
### Tracking Your Own Citations
|
|
140
|
-
|
|
141
|
-
1. Create a [Google Scholar Profile](https://scholar.google.com/intl/en/scholar/citations.html).
|
|
142
|
-
2. Verify your papers.
|
|
143
|
-
3. Enable "New citations to my articles" alerts.
|
|
144
|
-
4. Monitor your h-index and i10-index trends.
|
|
145
|
-
|
|
146
|
-
## AI-Powered Discovery Tools
|
|
147
|
-
|
|
148
|
-
### Connected Papers
|
|
149
|
-
|
|
150
|
-
[connectedpapers.com](https://connectedpapers.com/) builds a visual graph of related papers:
|
|
151
|
-
|
|
152
|
-
1. Enter a seed paper (title, DOI, or URL).
|
|
153
|
-
2. The tool generates a similarity graph (not citation graph).
|
|
154
|
-
3. Papers that are close together share more conceptual similarity.
|
|
155
|
-
4. Use "Prior works" and "Derivative works" views for temporal exploration.
|
|
156
|
-
|
|
157
|
-
### Elicit
|
|
158
|
-
|
|
159
|
-
[elicit.com](https://elicit.com/) uses language models to search and summarize papers:
|
|
160
|
-
|
|
161
|
-
1. Ask a natural-language research question.
|
|
162
|
-
2. Elicit finds relevant papers and extracts key findings.
|
|
163
|
-
3. Use the "Columns" feature to compare methods, datasets, and results across papers.
|
|
164
|
-
|
|
165
|
-
### Research Rabbit
|
|
166
|
-
|
|
167
|
-
[researchrabbit.ai](https://www.researchrabbit.ai/) provides:
|
|
168
|
-
|
|
169
|
-
- Citation network visualization
|
|
170
|
-
- "Similar work" recommendations
|
|
171
|
-
- Author network exploration
|
|
172
|
-
- Collection-based monitoring with email alerts
|
|
173
|
-
|
|
174
|
-
## Building Your Daily Pipeline
|
|
175
|
-
|
|
176
|
-
A recommended daily reading workflow:
|
|
177
|
-
|
|
178
|
-
```
|
|
179
|
-
Morning (15 min):
|
|
180
|
-
1. Check RSS reader for new preprints (filtered by keywords)
|
|
181
|
-
2. Star 3-5 papers for reading later
|
|
182
|
-
3. Quick-scan abstracts of starred papers
|
|
183
|
-
|
|
184
|
-
Weekly (1 hour):
|
|
185
|
-
1. Read 2-3 starred papers in full
|
|
186
|
-
2. Add to Zotero with tags and notes
|
|
187
|
-
3. Check citation alerts for tracked papers
|
|
188
|
-
4. Review AI recommendations (Semantic Scholar, Research Rabbit)
|
|
189
|
-
|
|
190
|
-
Monthly (30 min):
|
|
191
|
-
1. Audit alert quality -- prune noisy alerts, add new ones
|
|
192
|
-
2. Update RSS feed subscriptions for evolving interests
|
|
193
|
-
3. Share interesting papers with lab group
|
|
194
|
-
```
|
|
195
|
-
|
|
196
|
-
## Best Practices
|
|
197
|
-
|
|
198
|
-
- **Limit your feeds.** It is better to thoroughly read 5 papers per week than to skim 50.
|
|
199
|
-
- **Use a reference manager from day one.** Zotero, Paperpile, or Mendeley -- pick one and use it consistently.
|
|
200
|
-
- **Tag papers by project.** When you start writing, you will need to find that paper you read six months ago.
|
|
201
|
-
- **Share with your team.** Set up a shared Zotero group or Slack channel for paper recommendations.
|
|
202
|
-
- **Track trends, not just individual papers.** Notice when multiple groups independently converge on the same idea.
|
|
203
|
-
- **Combine automated and social discovery.** Algorithms miss papers that colleagues recommend.
|
|
204
|
-
|
|
205
|
-
## References
|
|
206
|
-
|
|
207
|
-
- [arXiv RSS Feeds](https://info.arxiv.org/help/rss.html) -- Official arXiv RSS documentation
|
|
208
|
-
- [Google Scholar Alerts](https://scholar.google.com/scholar_alerts) -- Citation and keyword alerts
|
|
209
|
-
- [Semantic Scholar](https://www.semanticscholar.org/) -- AI-powered paper search
|
|
210
|
-
- [Connected Papers](https://www.connectedpapers.com/) -- Visual paper exploration
|
|
211
|
-
- [Research Rabbit](https://www.researchrabbit.ai/) -- Collection-based paper discovery
|
|
@@ -1,168 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: zotero-scihub-guide
|
|
3
|
-
description: "Zotero plugin for automatic PDF retrieval from Sci-Hub"
|
|
4
|
-
metadata:
|
|
5
|
-
openclaw:
|
|
6
|
-
emoji: "🔓"
|
|
7
|
-
category: "literature"
|
|
8
|
-
subcategory: "fulltext"
|
|
9
|
-
keywords: ["Zotero", "Sci-Hub", "PDF download", "open access", "full text", "paper retrieval"]
|
|
10
|
-
source: "https://github.com/ethanwillis/zotero-scihub"
|
|
11
|
-
---
|
|
12
|
-
|
|
13
|
-
# Zotero Sci-Hub Guide
|
|
14
|
-
|
|
15
|
-
## Overview
|
|
16
|
-
|
|
17
|
-
Zotero Sci-Hub is a Zotero plugin that automatically fetches PDFs from Sci-Hub when papers cannot be found through standard open-access channels. It integrates seamlessly into Zotero's existing PDF retrieval workflow — when Zotero's built-in retriever fails, the plugin automatically attempts Sci-Hub as a fallback. Useful for researchers at institutions with limited journal subscriptions.
|
|
18
|
-
|
|
19
|
-
## Installation
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
# Download the .xpi file from GitHub releases
|
|
23
|
-
# In Zotero 7: Tools → Add-ons → Install Add-on From File
|
|
24
|
-
|
|
25
|
-
# Manual installation
|
|
26
|
-
# 1. Go to https://github.com/ethanwillis/zotero-scihub/releases
|
|
27
|
-
# 2. Download zotero-scihub-*.xpi
|
|
28
|
-
# 3. In Zotero: Tools → Add-ons → gear icon → Install from file
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
## Configuration
|
|
32
|
-
|
|
33
|
-
```
|
|
34
|
-
# In Zotero: Edit → Preferences → Zotero Sci-Hub
|
|
35
|
-
|
|
36
|
-
# Settings:
|
|
37
|
-
# 1. Sci-Hub URL: Set current working mirror
|
|
38
|
-
# - The plugin ships with default URLs
|
|
39
|
-
# - Update if mirrors change
|
|
40
|
-
|
|
41
|
-
# 2. Automatic mode:
|
|
42
|
-
# - ON: Try Sci-Hub automatically after Zotero fails
|
|
43
|
-
# - OFF: Only fetch via right-click menu
|
|
44
|
-
|
|
45
|
-
# 3. DOI sources: Where to look for DOIs
|
|
46
|
-
# - Item DOI field
|
|
47
|
-
# - Item URL field
|
|
48
|
-
# - Item Extra field
|
|
49
|
-
```
|
|
50
|
-
|
|
51
|
-
## Usage Workflow
|
|
52
|
-
|
|
53
|
-
```markdown
|
|
54
|
-
### Automatic PDF Retrieval
|
|
55
|
-
1. Add item to Zotero (via browser connector, DOI, or manual)
|
|
56
|
-
2. Zotero tries built-in PDF retrieval (Open Access, institutional)
|
|
57
|
-
3. If no PDF found → plugin automatically queries Sci-Hub
|
|
58
|
-
4. PDF attached to Zotero item
|
|
59
|
-
|
|
60
|
-
### Manual Retrieval
|
|
61
|
-
1. Right-click item(s) in Zotero
|
|
62
|
-
2. Select "Fetch PDF from Sci-Hub"
|
|
63
|
-
3. Works for single items or batch selection
|
|
64
|
-
|
|
65
|
-
### Bulk Retrieval
|
|
66
|
-
1. Select multiple items (Ctrl+A for all)
|
|
67
|
-
2. Right-click → "Fetch PDF from Sci-Hub"
|
|
68
|
-
3. Plugin processes items sequentially with rate limiting
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
## Integration with Other Plugins
|
|
72
|
-
|
|
73
|
-
```markdown
|
|
74
|
-
### Recommended Plugin Stack
|
|
75
|
-
1. **Zotero Connector** — Browser extension for importing items
|
|
76
|
-
2. **Zotero Sci-Hub** — PDF fallback retrieval
|
|
77
|
-
3. **ZotFile/ZotMoov** — Organize downloaded PDFs
|
|
78
|
-
4. **Zotero Better BibTeX** — Citation key management
|
|
79
|
-
5. **Zotero PDF Translate** — Translate retrieved papers
|
|
80
|
-
|
|
81
|
-
### Workflow
|
|
82
|
-
Import item → Auto-fetch PDF → Organize files → Read & annotate
|
|
83
|
-
```
|
|
84
|
-
|
|
85
|
-
## Troubleshooting
|
|
86
|
-
|
|
87
|
-
```markdown
|
|
88
|
-
### Common Issues
|
|
89
|
-
|
|
90
|
-
**PDF not found:**
|
|
91
|
-
- Check if DOI is present in item metadata
|
|
92
|
-
- Try updating the Sci-Hub mirror URL
|
|
93
|
-
- Some very recent papers may not be available yet
|
|
94
|
-
|
|
95
|
-
**Connection errors:**
|
|
96
|
-
- Current mirror may be down; try alternate URL
|
|
97
|
-
- Check network/proxy settings
|
|
98
|
-
- Some institutions block Sci-Hub domains
|
|
99
|
-
|
|
100
|
-
**Duplicate PDFs:**
|
|
101
|
-
- Disable automatic mode if using other PDF fetchers
|
|
102
|
-
- Check Zotero's duplicate detection settings
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
## Programmatic Alternative
|
|
106
|
-
|
|
107
|
-
```python
|
|
108
|
-
# For building custom PDF retrieval pipelines
|
|
109
|
-
import requests
|
|
110
|
-
|
|
111
|
-
def fetch_paper_by_doi(doi, output_path):
|
|
112
|
-
"""Attempt to fetch paper PDF via DOI resolution."""
|
|
113
|
-
# Try Unpaywall first (legal open access)
|
|
114
|
-
unpaywall_url = (
|
|
115
|
-
f"https://api.unpaywall.org/v2/{doi}"
|
|
116
|
-
f"?email=your@email.com"
|
|
117
|
-
)
|
|
118
|
-
resp = requests.get(unpaywall_url)
|
|
119
|
-
if resp.ok:
|
|
120
|
-
data = resp.json()
|
|
121
|
-
if data.get("is_oa") and data.get("best_oa_location"):
|
|
122
|
-
pdf_url = data["best_oa_location"].get("url_for_pdf")
|
|
123
|
-
if pdf_url:
|
|
124
|
-
pdf = requests.get(pdf_url)
|
|
125
|
-
with open(output_path, "wb") as f:
|
|
126
|
-
f.write(pdf.content)
|
|
127
|
-
return True
|
|
128
|
-
|
|
129
|
-
# Try CORE API
|
|
130
|
-
core_url = f"https://api.core.ac.uk/v3/search/works?q=doi:{doi}"
|
|
131
|
-
resp = requests.get(core_url)
|
|
132
|
-
if resp.ok:
|
|
133
|
-
results = resp.json().get("results", [])
|
|
134
|
-
if results and results[0].get("downloadUrl"):
|
|
135
|
-
pdf = requests.get(results[0]["downloadUrl"])
|
|
136
|
-
with open(output_path, "wb") as f:
|
|
137
|
-
f.write(pdf.content)
|
|
138
|
-
return True
|
|
139
|
-
|
|
140
|
-
return False
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
## Legal Considerations
|
|
144
|
-
|
|
145
|
-
```markdown
|
|
146
|
-
### Open Access Alternatives
|
|
147
|
-
Before using Sci-Hub, check these legal sources:
|
|
148
|
-
1. **Unpaywall** — Browser extension for legal OA versions
|
|
149
|
-
2. **CORE** — Aggregator of OA research papers
|
|
150
|
-
3. **PubMed Central** — Free biomedical literature archive
|
|
151
|
-
4. **arXiv/bioRxiv** — Preprint servers
|
|
152
|
-
5. **Author websites** — Many post preprints freely
|
|
153
|
-
6. **Interlibrary Loan** — Request through your library
|
|
154
|
-
7. **Email the author** — Most researchers share on request
|
|
155
|
-
```
|
|
156
|
-
|
|
157
|
-
## Use Cases
|
|
158
|
-
|
|
159
|
-
1. **PDF retrieval**: Automatic paper downloading for Zotero
|
|
160
|
-
2. **Literature collection**: Build reading libraries efficiently
|
|
161
|
-
3. **Systematic reviews**: Bulk-fetch papers for review pipelines
|
|
162
|
-
4. **Research onboarding**: Quickly gather papers for new topics
|
|
163
|
-
|
|
164
|
-
## References
|
|
165
|
-
|
|
166
|
-
- [Zotero Sci-Hub GitHub](https://github.com/ethanwillis/zotero-scihub)
|
|
167
|
-
- [Unpaywall](https://unpaywall.org/) — Legal OA alternative
|
|
168
|
-
- [CORE](https://core.ac.uk/) — OA aggregator
|