ResearchZosho

io.github.Wyrdsekai由 GitHub 账号 Wyrdsekai 发布v0.6.9更新于 Nov 7, 2026

Deep research assistant that checks its citations against the sources and keeps what it found.

概览

AI 生成的概览

深度研究助手:检索网页与论文,撰写带引用的报告,并把发现保存在本地资料库中供助手查询。

可以做什么
  • 运行研究问题,检索网页、学术文献与档案,并分节撰写报告
  • 核查引用:列出事实、来源与引文,逐句对照来源,并列出无法读取的来源
  • 管理论断:接受、质疑或退役草稿,禁用或信任站点,查询资料库已有内容
  • 把自己的 PDF、网页或整个文件夹作为集合入库,并只在这些文档中检索
  • 从图书馆目录与 Calibre 书架获取书籍推荐,并进行购物与操作指南类研究
  • 与图书管理员对话、按人名查看关联图谱,并把报告导出为 Markdown 或 PDF
适用场景
适合需要阅读大量来源并产出可核查报告的问题,例如医学、家谱或文献研究;也适合希望复用以往发现、不必从头开始的情况。
运行要求
通过 npx 或 Docker 在本地运行,或作为 127.0.0.1:4649 上的服务供 MCP 主机以 bearer 令牌通过 HTTP 连接。需要支持 OpenAI 聊天 API 的模型服务(本地或带密钥的托管服务)以及网页搜索后端(Brave 密钥或 SearXNG);除非构建自带运行时,否则需要 Java 21。资料库目录由 RESEARCHZOSHO_LIBRARY 指定。
安装前请注意
可选密钥会发送给第三方,部分按次计费:RESEARCHZOSHO_SERPER_KEY、RESEARCHZOSHO_SERPAPI_KEY、RESEARCHZOSHO_FIRECRAWL_KEY、RESEARCHZOSHO_API_KEY,以及播客、商店和档案类密钥。它会抓取网页,除非把 RESEARCHZOSHO_FETCH_PRIVATE 设为 deny,否则可访问你自己的网络。作为服务时页面默认开放,应开启登录。它会写入资料库目录,并可能自动更新。

安装

在 SourceWeft 中

  1. 打开 控制台中的 ResearchZosho,将其添加到工作区。
  2. 为需要使用其工具的对话启用该服务。

Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。

其他 MCP 客户端

参照 仓库 中的启动说明。

README

[图片]

ResearchZosho

研究蔵書, the research holdings. The Research Harness For The Rest Of Us.

ResearchZosho is an open-source deep research assistant. Give it a question and it searches the web and scholarly papers, or only your own PDFs, and writes a report in which every claim points at a source. It runs on your own computer with a local LLM (llama.cpp, Ollama, LM Studio) or a hosted API.

Three people, one problem.

Your vet mentions a new drug for your dog's cancer. The follow-up is in three days. You want to know what the studies say: how well it works, for which breeds, and what the side effects are. The answer is spread across twenty papers, a regulator's review, and many pages that only look like medical advice.

You are tracing your family. Your great-grandfather is in the 1911 census in Osaka. By 1921 he is gone from every record the family knows about. Somewhere there are ship manifests, a prefecture's emigration lists, and an old newspaper notice. Most of them are in Japanese. None of them are on the first page of a search.

You are writing one chapter of a thesis on the influence of the Soviet-Afghan War on 1990s British science fiction. You have forty papers and articles saved, in three languages. You have one week to work out what they agree on, where they disagree, and what nobody has looked at yet.

None of that can be read in one evening. That is the job ResearchZosho does. You give it the question. It reads and notes each fact with the source it came from. When it is done, a write-up is waiting: what it found, where the sources disagree, and what it could not resolve. Every claim in it points at a source you can check. It keeps what it found, so the next question on the same subject does not start from zero. If a paper you used gets a new version, or two of your own findings contradict each other, it tells you.

Nothing counts as valid until you have reviewed it.

It runs on your own computer with a model you pick, local or hosted. It is free and open source. It is for anyone who needs reliable research done.

This is The Research Harness For The Rest Of Us.

→ LIBRARIAN_HOWTOUSE.md: how to use it day to day → LIBRARY_PROTOCOL.md: for programmers, how a program talks to it → FAMILY_HISTORY.md: researching your family, from a relative's notes to records and a family tree → YOUTUBE.md: researching what is on YouTube — channels, what is said in a video and when, channels like one you know — without an API key

→ BEDROCK.md: using the models in your own AWS account (Amazon Bedrock) with your own AWS sign-in

→ MODELS.md: which model to run, from what we measured: the local models by your graphics card's VRAM first, then the hosted ones by what they got right, how long a run took and what it cost


What you can do with it

Send it a question. It works out what needs answering. It reads in parallel: the web, and the scholarly literature by DOI through Crossref and OpenAlex, and when the question calls for them the web archives, the Internet Archive, digitised historical newspapers, the National Diet Library's digitised Japanese books, the archives of source code and the video sites beside YouTube. A page that is gone is read from its archived copy. It writes the answer up in sections. It keeps going until the job is done, or for as long as you allow. It also reads sources in other languages, especially when the question points at a non-English language. The write-up says which languages its sources were in.

Check the answer. Every write-up ends with a table of the facts it used. Each fact has its source and a quote. A numbered list of unique sources follows. Before the write-up is shelved, each sentence that cites a source is checked against that source. A problem is called out. If it cannot read a source, because of a paywall, a login or another issue, it lists that source so you can supply the text yourself.

Keep bad sources out. A claim with one source stays a draft until a second, independent source backs it. A retracted paper disputes the claims that cite it. A site you ban is not used. A site you trust counts as a primary source.

Decide what stands. Each claim starts as a draft. You accept it, dispute it or retire it. The library uses what you accept next time.

Talk to it. researchzosho chat is a conversation with the Librarian. Ask what the shelves hold, ask a follow-up, say "find out …" to start a research run, ask "how did that go?", or go through the inbox. Every reply cites a look-up you can open. A figure it cannot back is marked as its guess. The same conversation is on the pages at /chat.

Ask what you already know. researchzosho ask "…" shows what the library has on a question: each claim, where it came from, and whether it is accepted or still in dispute.

Bring your own documents. A PDF, a web page, or a whole folder. Point it at a folder and every document in it is shelved as a collection. Then ask a question that searches only those documents, or one that starts there and goes to the web afterwards for more.

Get book recommendations. Ask for a book to read first on a subject, what a book covers, or what to read next. The recommendations come from the library catalogues (Open Library, Japan's National Diet Library and others), never from the model's memory, so every book named is a real one with a link to its record. It looks past the bestseller lists and says what each book covers and who it is for.

Use your own shelf. Point it at your Calibre library and it learns what you go for: the subjects, the authors you come back to, the decades and languages. researchzosho myshelf like "<title>" recommends books on your shelf like one by what the texts say, not by who wrote them. A nightly reading of your books builds a card for each, which describes the book and nothing about you. Say which rows you liked and disliked, and the next lists move.

Know what you own. Import your purchase records (the zip Amazon sends you, a mailbox of order confirmations, a card statement) and the library can tell what you already have. Every night it checks the open product-safety feeds against them, and a recall that may concern you waits in the inbox.

Research a purchase. Ask what to buy and the run looks only at what shops list right now in your country, with the price, the datasheet, recall notices, repairability and what owners say. The table judges fit against your need, not popularity. For used, vintage or out-of-print things it asks eBay and gives you ready search links for the marketplaces no program may read.

Ask how to do or make something. A craft, a hobby, a sport, a martial art or a trade. The answer comes with the kit: every material and tool, what it is for, what stands in for it, and where to get it. For a sport or a martial art, the gear in the order you need it and where to learn. For a community you want to join, such as the SCA or a reenactment society, how to join and what its rules ask of your equipment.

Podcasts and videos. A question about a podcast, a host or an episode reads what was said, with the time it was said, and cites the episode. Follow a show and its new episodes are noted as they arrive. A question about videos searches YouTube and the sites beside it and cites the moment.

Ongoing research, every night. Every night it runs the searches you have declared ongoing. It looks into questions it could not answer before. It re-reads a few accepted claims against their sources. It notices new versions of papers you cite. It keeps a dated backup. On Sundays it leaves you two lists: claims that look like duplicates, and documents you might clean out. It never merges, deletes or decides for you.

See how things connect. When a claim says a person lived in a place, or an author wrote a work, the library keeps the connection. researchzosho map "Arthur Ellis" shows everything around a name. The service draws it in your browser. This connects the research you have built up.

Open it in a browser. The service has basic pages: search, ask, read a claim with its sources, walk the subjects, see what changed and what is running, send a question, and download any write-up as Markdown or PDF. For a desktop editor, researchzosho vault writes a folder that Obsidian, SoloMD or SilverBullet can import.

Let other programs use it. Claude Code, Codex, Gemini CLI and any other MCP host can ask the library directly. A small HTTP service with Python and Java clients covers everything else.

Reach it from outside your home. researchzosho share makes the library reachable now, behind an encrypted relay (a Cloudflare quick tunnel at first, Tailscale Funnel for an address that lasts), free, with no port opened at home: anyone with the link sees the sign-in page, and only a person you invited gets in, with their name and password, a passkey, or a one-time code as a second step. Invite a person with one link; they choose their password when they open it.

Sign in simply. No tokens to paste. You make your account once, with a name and a password, and sign in from any phone or computer. On the library's own computer your browser needs no sign-in. Add a passkey, so your fingerprint or face signs you in, or a one-time code from an authenticator app as a second step. Programs still use tokens.

Getting started

Research runs need a model server that speaks the OpenAI chat API. That can be a local one (llama.cpp, Ollama, LM Studio) or a hosted API with a key (OpenAI, DeepSeek, Gemini, OpenRouter and others). You also need Java 21 or newer, unless you take a build that carries its own runtime. The installer picks that build for you when Java is missing.

Research runs also need a web search backend. It matters as much as the model. Use a Brave Search API key (free plan), or SearXNG (setup starts one with Docker). With neither, the built-in fallback searches Wikipedia and the scholarly literature only. Asking what the library already has works without a model.

git clone https://github.com/Wyrdsekai/researchzosho.gitcd researchzoshobin/researchzosho setup

When it is done, open http://127.0.0.1:4649/ in a browser.

setup asks a few questions. Each has an answer already filled in:

  • where the library installs
  • which model it uses, and which it checks for
  • which web search backend
  • whether search is by meaning, by keyword, or both
  • whether to run it as a service
  • which programs to connect

Then it shelves a document you name and answers a question about it. Run it again any time to change one thing. --yes takes every default.

The release installs on Linux, macOS and Windows. If you already use CodeZaiku, codezaiku install researchzosho fetches the release, checks it, and runs setup.

Settings live in ~/.researchzosho/config as key = value lines, or in the environment. These are the ones you are most likely to change:

settingwhat it is
RESEARCHZOSHO_DRIVEthe model server, for example http://localhost:8080 or https://api.openai.com/v1
RESEARCHZOSHO_MODELthe model name to ask for
RESEARCHZOSHO_JUDGE_DRIVE / RESEARCHZOSHO_JUDGE_MODELa second, stronger model for the judgment steps (planning, the critic, the write-up, the citation check), while a local model does the reading
RESEARCHZOSHO_EMBEDan embeddings server (OpenAI embeddings call), so search works by meaning as well as by words; off for words only. researchzosho embed start runs one with Docker (Text Embeddings Inference, about nine times faster than llama.cpp on the same model)
RESEARCHZOSHO_LIBRARYwhere the library folder is (default ~/researchzosho-library)
research.workers / research.pause / research.windowhow research runs share the model: how many questions at once, a pause switch, the hours it may work. Set with researchzosho research …; they take effect at once
RESEARCHZOSHO_VISION_DRIVE / RESEARCHZOSHO_VISION_MODELa separate model for reading pictures (a photographed page, a scanned PDF); by default your own model reads them, when it reads images
RESEARCHZOSHO_RECORDSrecord_search goes to research runs in genealogy mode and to software questions; always gives it to every run, off to none
RESEARCHZOSHO_SERPER_KEY / RESEARCHZOSHO_SERPAPI_KEYGoogle's own results through Serper (serper.dev) or SerpApi (serpapi.com), used first when set; paid per search after the free allowance, so set one only to pay for it; researchzosho search status shows the month's tally
RESEARCHZOSHO_FIRECRAWL_KEYa page a plain fetch cannot read (built by scripts, a bot wall, a 403) is read through Firecrawl's browser (firecrawl.dev); paid per page after the free credits, at most twenty pages a run
RESEARCHZOSHO_BRAVE_KEY / RESEARCHZOSHO_SEARXNGthe web search backend: a Brave Search API key (used before SearXNG), a SearXNG address (default http://localhost:8888; researchzosho search start runs one with Docker); with neither, the built-in fallback, Wikipedia plus Crossref and OpenAlex (RESEARCHZOSHO_FALLBACK_SEARCH=off turns it off)
RESEARCHZOSHO_API_KEYthe key for a hosted API; it is sent only to that server
RESEARCHZOSHO_UPDATEcheck (default): say when a newer release exists; auto: the service updates itself after the housekeeping when idle; off
RESEARCHZOSHO_EXPLORER_PER_NIGHT / RESEARCHZOSHO_EXPLORER_TYPEShow many open questions the housekeeping researches a night (default 2), and of which types (default report, asked, person)
RESEARCHZOSHO_PODCASTINDEX_KEY / RESEARCHZOSHO_PODCASTINDEX_SECRETthe Podcast Index key and secret (api.podcastindex.org/signup, free): the open podcast directory and search by person. Apple's directory answers without them. researchzosho podcast index download keeps the directory's weekly file on the machine (1.8 GB) for searching and browsing shows by word, category and language without the API; RESEARCHZOSHO_PODCASTINDEX_LOCAL=on has the housekeeping refresh it.
RESEARCHZOSHO_YAHOO_JP_CLIENT_ID, RESEARCHZOSHO_RAKUTEN_APP_ID + RESEARCHZOSHO_RAKUTEN_ACCESS_KEY, RESEARCHZOSHO_ICECAT_USER, RESEARCHZOSHO_REDDIT_CLIENT_ID + RESEARCHZOSHO_REDDIT_CLIENT_SECRETthe shops and catalogues a shopping question may ask, all free: Yahoo!ショッピング and 楽天市場 listings with prices (Japan), Open Icecat datasheets, what owners wrote on Reddit through an app of your own. Without them the run uses the open sources and points at shops.
RESEARCHZOSHO_REDDIT_ARCHIVE / RESEARCHZOSHO_STACKEXCHANGE_KEYdiscussion threads read in full (researchzosho forums, the tool forum_search): Reddit through the Arctic Shift archive, a copy of Reddit minutes to hours behind (off points at Reddit and never reads it); the Stack Exchange sites through their API, 300 calls a day without a key and 10,000 with a free one from stackapps.com
RESEARCHZOSHO_COMPANIES_HOUSE_KEY / RESEARCHZOSHO_GBIZINFO_TOKENthe career search's company registers: a free Companies House API key (the UK register is read through its search page without one), a free gBizINFO token (Japan's register is not read without one); France's needs none
calibreyour Calibre library, its folder or its metadata.db, read and never changed: researchzosho settings set calibre "~/Calibre Library". Your shelf, the books' cards and "like this one" come from it
marketthe country you buy in, as two letters; setup asks for it. A shopping run uses that country's shops, currency and recall notices
ebay_client_id + ebay_client_secreteBay listings and auctions in your market, for used, vintage and out-of-print things; free from eBay's developer program
cinii_appidJapanese books across the university libraries, with how many hold each; free from NII
dna_minutes / dna_sharehow long a night the library reads your books for their cards (20 unless set, 0 for none), and whether a pack of the cards, with nothing of you in it, is written once a week for you to share (off unless set)
recallsoff stops the nightly check of the product-safety feeds against what you own
RESEARCHZOSHO_WHISPERa transcription server on another machine (an OpenAI-style /v1/audio/transcriptions); the local container when unset. RESEARCHZOSHO_TRANSCRIBE_EPISODES and RESEARCHZOSHO_TRANSCRIBE_MINUTES cap what one run transcribes (2 episodes, 120 minutes); RESEARCHZOSHO_TRANSCRIBE_FOLLOWED_MINUTES caps a night's transcription for followed podcasts (unset: none). researchzosho settings reads and changes every setting.
RESEARCHZOSHO_TROVE_KEY / RESEARCHZOSHO_DIGITALNZ_KEY / RESEARCHZOSHO_EUROPEANA_KEY / RESEARCHZOSHO_DPLA_KEYkeys for the archives that want one: Trove (Australian newspapers), DigitalNZ (a higher rate for Papers Past), Europeana and DPLA (heritage items). The rest of the archives need none.
RESEARCHZOSHO_FETCH_PRIVATEdeny to stop it fetching addresses on your own network
RESEARCHZOSHO_FETCH_MAX_BYTESthe largest document it will download (default 25 MB)
RESEARCHZOSHO_STALL_MINUTESafter how many minutes without progress a research run is marked "no progress since" and the service writes where the run waits into its log (default 15)
RESEARCHZOSHO_FETCH_MIN_BYTES_PER_SECONDthe slowest a page may come, on average, before the download is given up (default 4,096 bytes a second); a page that keeps coming faster is read to its end however long it takes

As a service

bin/researchzosho service install           # Linux, macOS or Windows; a user service, no administrator rights

The service listens on 127.0.0.1:4649. It does the housekeeping at 03:00 and runs the questions you send. service install --host 0.0.0.0 opens it to your own network. The pages are open as shipped: anyone who can reach them can read and send questions. researchzosho web signin on turns on access control.

From Claude Code, Codex or Gemini CLI

claude mcp add --transport http librarian http://127.0.0.1:4649/rpc --header "Authorization: Bearer <token>"codex mcp add librarian -- researchzosho mcpnpx -y @wyrdsekai/researchzosho-mcp        # any client that runs npm packages; installs the release if neededgemini mcp add -t http librarian http://127.0.0.1:4649/rpc -H "Authorization: Bearer <token>"

researchzosho reader token <did> makes the token: programs sign in with tokens, people with a name and password. Every session can then use the library.

What to use it with

Nothing to buy. In this order:

  • A browser. Open http://127.0.0.1:4649/ once the service runs. Search, ask, read a claim with its sources, have it explained, see the map, send a question, download a write-up. Nothing to install. This is also how the rest of the house uses the library.
  • Obsidian or SoloMD. Open the folder that researchzosho vault writes.
  • codezaiku chat, to talk to the library on a local model, for free. It connects to the service. What the library holds is pushed into each turn, /librarian asks it, and /research files runs with it.
  • Claude Code, Codex or Gemini CLI, if you have one. setup connects it. Every session then has the library's tools. Any other program that speaks MCP connects the same way.

For programs there are two clients. Both follow LIBRARY_PROTOCOL.md. Its sections 1 to 6 are the contract and keep working across releases.

  • Python (sdk/python, no dependencies): pip install researchzosho, then Librarian("http://127.0.0.1:4649", token=…).
  • Java (client/): org.researchzosho:client, then LibrarianClient.

The family

ResearchZosho is part of Wyrdsekai. Its sibling is CodeZaiku, a coding and development harness that runs on local models or hosted APIs: code, review, research and guarded ops. codezaiku install researchzosho installs this library beside it. The two share a model server, so one on-demand model on a machine serves both.

Licence

Apache 2.0. See LICENSE. ResearchZosho includes no model. You supply a model server and accept its licence separately.

来源:README.md,提交 517fd62

工具

0
SourceWeft 尚未在沙箱中启动过该软件包,因此其工具未知。

版本历史

18
  1. v0.6.9最新Nov 7, 2026
  2. v0.6.8Nov 1, 2026
  3. v0.6.6Oct 29, 2026
  4. v0.6.5Oct 20, 2026
  5. v0.6.4Oct 18, 2026
  6. v0.6.3Oct 17, 2026
  7. v0.6.1Oct 15, 2026
  8. v0.6.0Oct 12, 2026
  9. v0.5.5Oct 9, 2026
  10. v0.5.4Oct 8, 2026
  11. v0.5.3Oct 5, 2026
  12. v0.5.2Oct 1, 2026
  13. v0.5.1Sep 29, 2026
  14. v0.5.0Sep 29, 2026
  15. v0.4.6Sep 18, 2026
  16. v0.4.4Sep 17, 2026
  17. v0.4.1Sep 17, 2026
  18. v0.4.0Sep 16, 2026

评分

已满足适用检查项的 50%

该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。

  • 近 30 天内可连通25 分

    请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。

  • 已声明认证方式10 分

    请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。

  • 已列出工具15 分

    请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。

  • 描述必需15 分
  • 图标10 分
  • 文档15 分
  • 许可证10 分