v2.3.0
Native-Chinese literature search, routing by judgment instead of keywords, and an agent-mode rebuild — while an English run that doesn't use the new features renders byte-for-byte as before, with still no new hard dependencies.
🇨🇳 Native-Chinese search (the headline)
Chinese queries now retrieve Chinese literature directly, not a translated-to-English approximation.
- Two new self-contained sources — pure HTTP, no login, no scraping of closed databases:
- NSSD (国家哲学社会科学文献中心) for social sciences & humanities — including CSSCI flagships like 《经济研究》 that the international open sources index zero of.
- yiigle (中华医学期刊全文数据库) for medicine — native-Chinese titles + abstracts + DOIs largely absent from OpenAlex / CrossRef / PubMed.
- One control:
search_language: auto | en | zh | both. A Chinese query is no longer force-translated to English; the skill asks once (and can remember your default). NSSD/yiigle route automatically by discipline; OpenAlex stays the multilingual baseline (it's not "the English source"). - Honest boundary: closed databases (CNKI / 万方 / 维普) are deliberately not scraped, for compliance — so the skill tells you when a topic (e.g. CNKI-exclusive psychology journals like 《心理学报》) needs a manual CNKI follow-up, rather than pretending full coverage.
🧭 Routing by judgment, not keywords
- Source routing is reframed from "keyword X → enable source Y" to the agent judging the query's domain — keyword lists are now calibration examples, not triggers.
- AI / CS queries default to Semantic Scholar as the primary engine (measured: OpenAlex has no clean record for landmark papers like Attention Is All You Need, and undercounts 2025 citations by 20–250×). Transient
--primary-sourcefor headless callers; needs an SS key, else it stays on OpenAlex.
🤖 Agent mode: a recipe, not a black box
agent_mode.md is rebuilt around one principle: the deterministic heuristic is a floor, not a ceiling. The calling agent — being an LLM — is guided to do relevance / domain / language judgment inline to reach the same quality as the human 14-step path (the RCS rubric is handed over; saturation-iteration and citation-chasing are spelled out). New flags: --lang, --with-nssd / --with-yiigle, --primary-source, plus a structured meta.language block.
🛠 Under the hood
- Fixed a latent journal-rank bug: the federated resolver dropped
issn, so the CAS/JCR/SJR ISSN-join was annotating ~0 papers — now merged and serialized (all sources benefit). - Chinese-native title / authors are preserved when a record collides on DOI with an English OpenAlex record.
- CJK 2-gram coverage so the headless relevance floor is query-grounded for Chinese too.
✅ Quality
A 4-dimension expert review + an independent Codex code review surfaced 6 P1s — all fixed and re-reviewed to a clean pass — then a blind end-to-end test on four real research tasks confirmed NSSD returns 《经济研究》, yiigle returns 中华系列 medicine, routing is correct, and the honest coverage disclosure emerges on its own.
Compatibility
- No behavior change to an English run that doesn't use the new features — byte-for-byte identical.
- No new hard dependencies; Chinese partition/source data is never bundled.
Full changelog: v2.2.0...v2.3.0