agentsclimarketplace

Supplementary search

Skill kennethkhoocy/applied-micro-skills/plugins/applied-micro/skills/lit-review-orchestrator/supplementary-search

Stage 4 of the lit review pipeline: search academic sources — general Google Scholar (--scholar), SSRN, NBER, HeinOnline, citation chaining via Semantic Scholar, and forthcoming paper lists from top finance journals. Long research prompts are automatically condensed into 3-5 short queries via Claude Sonnet before searching. Only use this skill when explicitly requested — e.g., the user says "run supplementary search", "supplementary-search", or "/supplementary-search". Do NOT auto-trigger on general literature review or paper search requests.From its SKILL.md

Install
npx -y skills add kennethkhoocy/applied-micro-skills --skill supplementary-search

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

SKILL.md

5.7 KB, ~1.4k tokens by cl100k_base, as published. Nobody here has run it

Supplementary Search (Multi-Source)

Search additional academic sources for working papers, citation chains, and forthcoming articles that the primary search engines may miss.

Input: a research query string, optionally seed DOIs for citation chaining Output: <stem>.ris + <stem>.json (same schema as Undermind/Scholar Labs)

This is Stage 4 of a lit review pipeline. Output can be merged with Stages 1-2 (Undermind, Scholar Labs) for dedup and screening.

Quick Start

# Search all sources
python scripts/supplementary_search.py "corporate governance regulation" -o results.json --all

# Just SSRN and NBER
python scripts/supplementary_search.py "voting rules" -o results.json --ssrn --nber

# Citation chaining from prior results
python scripts/supplementary_search.py "voting rules" -o results.json \
  --citation-chain --seeds-from undermind_results.json --top-seeds 20

# Forthcoming papers with caching
python scripts/supplementary_search.py "shareholder activism" -o results.json --forthcoming --cache

Prerequisites

pip install requests beautifulsoup4 anthropic

API Keys

  • SEARCHAPI_API_KEY — required for SSRN, HeinOnline, and forthcoming journal searches (uses SearchAPI.io's Google Scholar engine). Get one at searchapi.io.
  • ANTHROPIC_API_KEY — required for query condensation (uses Claude Sonnet). Already needed for other pipeline stages.

Source Flags

FlagSourceMethod
--scholarGoogle Scholar (general)Google Scholar via SearchAPI (no site filter)
--ssrnSSRNGoogle Scholar via SearchAPI (site:ssrn.com)
--nberNBER working papersNBER REST API
--heinonlineHeinOnlineGoogle Scholar via SearchAPI (site:heinonline.org)
--ecgiECGI working papersHTML scrape via requests
--citation-chainSemantic ScholarREST API (free)
--forthcomingJF, JFE, RFSGoogle Scholar via SearchAPI (source:"...")
--allAll of the above—

CLI Flags

FlagDefaultDescription
query(optional)Research query text (optional if --queries-file is given)
-o, --outputsupplementary_results.jsonOutput file path
--ssrnoffSearch SSRN
--nberoffSearch NBER
--heinonlineoffSearch HeinOnline via Google Scholar
--scholaroffSearch Google Scholar directly (no site filter)
--ecgioffSearch ECGI
--citation-chainoffCitation traversal via Semantic Scholar
--forthcomingoffForthcoming lists from top journals
--alloffEnable all sources
--no-condenseoffSkip query condensation; use raw query as-is
--queries-file—JSON array of query strings; overrides condensation and the positional query
--seeds-from—JSON file to extract seed DOIs from
--top-seeds10Number of top papers to use as seeds
--hops1Citation chain depth (1 = direct citations only)
--cacheoffCache forthcoming lists (avoid re-scraping)
--max-per-source100Max papers per source
--debug-dirsupplementary_debugWhere to save debug output

Output Schema

Same as Undermind/Scholar Labs, with source tag:

{
  "title": "Paper Title",
  "authors": "Author1, Author2",
  "year": "2024",
  "doi": "https://doi.org/10.1234/...",
  "abstract": "...",
  "journal": "Journal Name",
  "relevance": "",
  "score": "",
  "url": "https://...",
  "source": "ssrn"
}

Query Condensation

Long research prompts (~2000 chars) produce poor Google Scholar results. Before any SearchAPI call, the script uses Claude Sonnet to distill the full prompt into 3-5 short (3-6 word) queries covering distinct literature streams. Each condensed query is run per source, and results are deduplicated.

  • Runs automatically unless --no-condense is passed
  • --no-condense wraps the raw query in a single-element list (useful for short manual queries that don't need condensation)
  • Citation chaining is unaffected (uses seed DOIs, not text queries)
  • NBER also uses condensed queries (one API call per condensed query)

In the orchestrator's agent-driven flow the orchestrator passes --queries-file with agent-written queries (a Sonnet subagent by default, Opus when all_opus), bypassing condense_query entirely; the in-script Claude Sonnet condensation here is the autonomous fallback for standalone raw-query runs.

Important

  • SSRN, HeinOnline, and forthcoming use SearchAPI's Google Scholar engine — requires SEARCHAPI_API_KEY env var. No Playwright or browser needed.
  • Semantic Scholar API is free but rate-limited (100 req / 5 min) — the script adds polite delays automatically
  • Forthcoming lists: use --cache to avoid re-querying within 24 hours
  • Results are deduplicated by DOI and title before output

Troubleshooting

SSRN/Forthcoming returns no results: Check that SEARCHAPI_API_KEY is set. Inspect supplementary_debug/searchapi_*.json for raw responses.

Semantic Scholar rate limit: The script auto-throttles. If you hit limits, reduce --top-seeds or --hops.

What ships with it: 1 file

35.5 KB alongside SKILL.md, 1 of them executable

scripts/

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.