跳到正文
cccskills
免费在 GitHub 公开

paper-discover

Use when searching for academic papers related to a topic, finding papers similar to one already in the vault, or discovering research gaps. Triggers on "find papers", "related papers", "paper search", "literature", "what papers should I read about X".

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(3)

  • SKILL.md6.5 KB
  • agents/paper-writer.md3.4 KB
  • scripts/search_papers.py7.4 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

<Purpose> Search academic databases (Semantic Scholar) for papers relevant to a topic or related to an existing vault note. Returns ranked results with relevance assessment against vault content. Optionally creates formatted paper notes in the vault's inbox for processing. </Purpose>

<Use_When>

  • User asks to find papers on a topic ("find papers about scaling laws")
  • User wants papers related to an existing note ("what papers connect to this?")
  • User is /processing a paper and wants to find related work
  • User asks "what should I read about X?"
  • User provides a DOI or paper title and wants similar papers
  • User wants to fill gaps in a knowledge domain </Use_When>

<Do_Not_Use_When>

  • User has a paper file to analyze (use /paper or /book-analyzer)
  • User wants to process an existing vault note (use /process)
  • User wants general web research, not academic papers (use /research) </Do_Not_Use_When>

<Execution_Policy>

  • Search first, present results, then create notes only if user approves
  • Always check vault for existing paper notes before creating duplicates
  • Rank by vault relevance, not just citation count
  • Cap at 10 results per search — quality over quantity
  • Respect Semantic Scholar rate limits (100 req/5min) </Execution_Policy>
<Steps>

Stage 1: PARSE QUERY AND CONTEXT

Determine the search mode from user input:

Mode A — Topic search (default): User provides a topic or question. Extract search terms.

"find papers about scaling laws for LLMs" → query: "scaling laws large language models"

Mode B — Similar papers: User references an existing vault note or provides a paper ID/DOI.

  1. Read the referenced note to extract title, key concepts
  2. Use the paper's Semantic Scholar ID or DOI for recommendations
  3. Fall back to keyword search if no ID available

Mode C — Gap filling: User asks about a domain. Search vault first to identify what's covered, then search for papers on uncovered subtopics.

Stage 2: SEARCH

Run the search script:

SKILL_DIR="${CLAUDE_SKILL_DIR}"

# Topic search
python3 "$SKILL_DIR/scripts/search_papers.py" "QUERY" --limit 20 --min-citations 5

# With year filter
python3 "$SKILL_DIR/scripts/search_papers.py" "QUERY" --limit 20 --year-from 2020

# Get recommendations from a paper
python3 "$SKILL_DIR/scripts/search_papers.py" "" --recommend-from "DOI:10.xxxx/xxxxx"

# Look up specific paper
python3 "$SKILL_DIR/scripts/search_papers.py" "" --paper-id "DOI:10.xxxx/xxxxx"

Script returns JSON array of papers with: title, authors, year, abstract, tldr, citation_count, influential_citations, url, doi, arxiv_id, fields_of_study.

Stage 3: RANK AND PRESENT

Read the agent definition from agents/paper-writer.md in the skill directory.

Search the vault for existing paper notes on this topic using the MCP tool:

search_notes(query="KEYWORD", limit=20)

Or fall back to Grep if MCP is unavailable:

Grep(pattern="KEYWORD", path="notes/", glob="*.md", head_limit=20)

Launch the paper-writer agent to rank and present:

Agent(
  subagent_type="general-purpose",
  model="sonnet",
  run_in_background=false,
  prompt="You are Paper Writer. Follow these instructions exactly:

  [INSERT FULL CONTENT OF agents/paper-writer.md HERE]

  SEARCH CONTEXT:
  - User query: [original query]
  - Search mode: [topic/similar/gap]
  - Vault topics: [detected from search/tags]

  EXISTING VAULT PAPERS:
  [List any matching paper notes already in the vault]

  SEARCH RESULTS:
  [INSERT JSON FROM STAGE 2 HERE]

  Rank these papers by relevance to the vault's existing knowledge.
  Present the top 10 with your assessment. Do NOT create notes yet —
  just present the ranked list for user triage."
)

Stage 4: CREATE NOTES (on user approval)

After user selects which papers to add:

For each selected paper, create a vault note:

  1. Generate timestamp ID: date +%Y%m%d%H%M%S
  2. Create the note file with proper frontmatter and body
  3. Check for duplicate titles before creating

Note template:

---
id: YYYYMMDDHHMMSS
created_date: YYYY-MM-DD
updated_date: YYYY-MM-DD
type: paper
category:
link: [paper URL]
processing_status: inbox
---

# Title
- **🏷️Tags** : #paper #topic-tag #MM-YYYY

[ ](#anki-card)

## Abstract
- [Synthesized abstract bullets]

## Notes

## Questions

## Related links
- [Paper URL](url)
- [[(Type) Related Vault Note]]

Place the note in notes/paper/ (or appropriate topic folder).

</Steps>

<Tool_Usage>

  • Bash: Run search_papers.py script, generate timestamps
  • Read: Read agent definition, read existing vault notes for context
  • Write/Edit: Create paper notes in vault
  • Agent: Delegate ranking/presentation to paper-writer (sonnet)
  • Grep/Glob: Search vault for existing papers and related notes
  • TodoWrite: Track progress through stages </Tool_Usage>
<Examples> <Good> User: "find papers about scaling laws for neural networks" 1. Search → 20 results from Semantic Scholar 2. Check vault → found 3 existing scaling law papers 3. Agent ranks → filters to 8 new papers, ranked by vault relevance 4. Present: "Found 8 papers you don't have. Top pick: 'Chinchilla' (2022, 4200 citations) — connects to your [[Scaling Laws]] and [[Compute-Optimal Training]]" 5. User picks 3 → create 3 paper notes in notes/paper/ with inbox status </Good> <Good> User: "what papers are related to this one?" (while viewing a paper note) 1. Read current note → extract title, DOI 2. Get recommendations via Semantic Scholar API 3. Check vault → filter out papers already present 4. Present ranked list with connections to existing notes </Good> <Bad> User: "find papers about ML" - Too broad — should ask: "ML is a wide field. What aspect? Scaling laws, reinforcement learning, attention mechanisms, optimization...?" </Bad> </Examples>

<Escalation_And_Stop_Conditions>

  • No results: Try broader query, suggest alternative terms
  • API rate limited: Wait and retry (script handles this automatically)
  • Query too broad: Ask user to narrow down the topic
  • All results already in vault: Report "your vault already covers this well"
  • Network error: Inform user, suggest trying again later </Escalation_And_Stop_Conditions>

$ARGUMENTS

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Analyze a book (EPUB/PDF) and generate detailed chapter-by-chapter notes with extracted key concepts. Use when given a book file path to process.

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

course

免费

Process an online course into detailed vault notes — one per lecture, with slides and transcripts synthesized. Use this skill whenever the user shares a course URL, syllabus page, or lecture playlist and wants structured notes from it. Also triggers on "process this course", "take notes on these lectures", "course notes", any university course page, or when someone pastes a link to a course with multiple lectures/sessions. Even if the user just says "check out this course" or drops a .edu link with a schedule — use this skill.

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

Deep, iterative, multi-source research that explores a topic from multiple perspectives, detects contradictions, and produces a comprehensive vault note with fact-level citations and a confidence map. Use this skill whenever the user says /deep-research, "deep research X", "research X thoroughly", "investigate X deeply", "I need to really understand X", or wants research that goes beyond a quick web search. Also use when the user wants to understand a complex, contested, or multi-faceted topic, compare competing approaches with evidence, or build a comprehensive mental model they can trust for decisions. This is heavier than /research — it searches web, academic papers, Reddit, and the vault, then loops through exploration and critique rounds until the evidence base is solid. When in doubt between /research and /deep-research, prefer this one if the topic is complex, contested, or the user wants depth over speed.

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

init

免费

Initialize an Obsidian vault with the agent-ready Zettelkasten system — creates directory structure, templates, CLAUDE.md, MCP config, and hooks

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

lecture

免费

Extract transcript and key slides from a local video file, then create a vault-formatted lecture note. Use this skill whenever a user provides a local video file (.mp4, .mov, .mkv, .avi, .webm) and wants notes from it. Triggers on "lecture", "take notes", "I have a recording of", "class video", "transcribe this presentation", "process this video for notes", or /lecture. Works with any language — auto-detects transcript language.

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

process

免费

CORE learning workflow — use this whenever the user has a source note open (paper, post, book, lecture, course, clipping) and wants to extract knowledge, understand what they just read, or build it into their vault. Triggers on "process this note", "process this paper", "extract concepts", "what can I learn from this", "atomize this", "add this to my vault", "what's important here", or when the user shares a note and asks for help understanding it. Do NOT wait for an explicit /process command — if the user is engaging with a source note and wants to go deeper, this skill applies.

中文简介正在准备中。当前显示原文说明。

tuan3w/obsidian-vault-agent412026年3月30日 更新

查看 tuan3w 的全部技能

报告此技能的问题