extractium
Extractium™ builds a compendium: a portable, static, multi-format knowledge index any LLM can consume.
Documentation from the repository README
Extractium™
Description
Extractium™ turns scattered public documentation into one searchable knowledge base. Point it at sources such as TeamDynamix, GitHub, YouTube, websites, and local files, and it gathers and organizes the content for use in a website, search tool, or AI assistant.
Behind the scenes, Extractium™ prepares the content for both keyword and semantic search and can publish multiple output formats for static hosting, including GitHub Pages. It grew out of the indexing engine in Field Station AI™ and uses configuration and plugins so research centers and other organizations can build their own knowledge collections.
Project status: a build runs end to end and writes the search index and the llms.txt files, and the Python and JavaScript clients search that index. See the implementation plan in docs/ for the order of work.
Quick Start Guide
git clone https://github.com/DepressionCenter/extractium.git
cd extractium
pip install -e ".[dev]"
cp examples/config.example.yaml config.yaml # then change the seed URL to your own site
python -m extractium.cli build --config config.yaml --max-pages 25Needs Python 3.10 or newer. The first build downloads the embedding model, about 130 MB; later builds reuse it.
That writes dist/kb-index.json, dist/llms.txt, and dist/llms-full.txt. Drop the page cap once the page list in dist/llms.txt looks right. extractium build is the shorter form of the last line, once Python's scripts folder is on your PATH. See docs/usage.md for every option and what each exit code means, and docs/troubleshooting.md if a step above did not work.
Documentation
- The full documentation is available at: https://michmed.org/efdc-kb
- Technical pages live in docs/:
- Running a build — the command line, its options, and its exit codes.
- Configuration reference — every setting in
config.yaml. - Data flow — what happens to content between the site and the output folder.
- Specification — architecture, plugin kinds, outputs, and sources.
- Container format — the index file every client reads.
- How to search a compendium — searching a built index from Python or JavaScript.
- How to run a weekly build — the one-command local build and the scheduled one.
- Troubleshooting — known failures, causes, and fixes.
- Implementation plan — the phased order of work.
- SKILLS.md tells an AI agent how to use a published index.
Additional Resources
- FieldStationAI™: https://github.com/DepressionCenter/FieldStationAI
- Mobile Technologies Core — the group that develops and maintains Field Station AI.
- EFDC Knowledge Base — documentation site referenced above and used as source content for the app's optional knowledge-base feature.
About the Team
The Mobile Technologies Core provides investigators across the University of Michigan the support and guidance needed to utilize mobile technologies and digital mental health measures in their studies. Experienced faculty and staff offer hands-on consultative services to researchers throughout the University – regardless of specialty or research focus.
Learn more at: https://depressioncenter.org/mobiletech.
Contact
To get in touch, contact the individual developers in the check-in history.
If you need assistance identifying a contact person, email the EFDC's Mobile Technologies Core at: [email protected].
Credits
Authors:
Contributors:
This work is based in part on the following projects, libraries and/or studies:
- FieldStationAI™ : A research platform for mobile and digital mental health studies. Used as the original source of the crawling/indexing engine that was extracted into this project. https://github.com/DepressionCenter/FieldStationAI
License
Copyright Notice
Copyright © 2026 The Regents of the University of Michigan
Software and Library License Notice
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see https://www.gnu.org/licenses/gpl-3.0-standalone.html.
Documentation License Notice
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. You should have received a copy of the license included in the section entitled "GNU Free Documentation License". If not, see https://www.gnu.org/licenses/fdl-1.3-standalone.html
Citation
If you find this repository, code or paper useful for your research, please cite it.
Citation Example:
Mongefranco, Gabriel (2026). Extractium™. University of Michigan. Software. https://github.com/DepressionCenter/extractium
DOI: < DOI # e.g. 10.6084/m9.figshare.xxxxxx.v1 >
Copyright © 2026 The Regents of the University of Michigan