Your ultimate research companion
Project description
Alithia
Time is one of the most valuable resources for a human researcher, best spent on thinking, exploring, and creating in the world of ideas. With Alithia, we aim to open a new frontier in research assistance. Alithia aspires to be your powerful research companion: from reading papers to pursuing interest-driven deep investigations, from reproducing experiments to detecting fabricated results, from tracking down relevant papers to monitoring industrial breakthroughs. At its core, Alithia forges a strong and instant link between your personal research profile, the latest state-of-the-art developments, and pervasive cloud resources, ensuring you stay informed, empowered, and ahead.
Features
In Alithia, we connect each researcher’s profile with publicly available academic resources, leveraging widely accessible cloud infrastructure to automate the entire process. In its current version, Alithia is designed to support the following features:
- Reseacher Profile
- Basic profile: research interests, expertise, language
- Connected (personal) services:
- LLM (OpenAI compatible)
- Zotero library
- Email notification
- Github profile
- Google scholar profile
- X account message stream
- Gems (general research digest or ideas)
- Academic Resources
- arXiv papers
- Google scholar search
- Web search engines (e.g., tavily)
- Individual researcher homepage
Installation
Alithia uses optional dependencies to keep the base installation lightweight. The default installation includes PaperScout agent dependencies.
Recommended: Default Installation
For most users, install with default dependencies (includes PaperScout agent: ArXiv fetching, Zotero integration, email notifications, etc.):
pip install alithia[default]
This installs:
arxiv- ArXiv paper fetchingpyzotero- Zotero library integrationscikit-learn- Machine learning utilitiessentence-transformers- Embedding modelsfeedparser- RSS feed parsingbeautifulsoup4&lxml- Web scrapingtiktoken- Token counting- And other PaperScout dependencies
Note: alithia[paperscout] is an alias for alithia[default] and works the same way.
Minimal Installation
Install only the core library (includes cogents-core only, no PaperScout features):
pip install alithia
⚠️ Warning: This minimal installation does not include PaperScout agent dependencies. Most users should use alithia[default] instead.
Install with PaperLens Support
For PDF analysis and deep paper interaction:
pip install alithia[paperlens]
This installs:
docling- PDF parsing and OCRonnxruntime- Model inference
Install All Features
Install everything (Default/PaperScout + PaperLens):
pip install alithia[all]
Development Installation
For development, clone the repository and install with development dependencies:
git clone https://github.com/caesar0301/alithia.git
cd alithia
uv sync --extra default --extra dev
Or using pip:
pip install -e ".[default,dev]"
Note: You can also use alithia[paperscout,dev] as paperscout is an alias for default.
Quick Start
1. Setup PaperScout Agent
The PaperScout Agent delivers daily paper recommendations from arXiv to your inbox.
Prerequisites:
- Zotero Account: Sign up and get your user ID and API key from Settings → Feeds/API
- OpenAI API Key: From any OpenAI-compatible LLM provider
- Email (Gmail): Enable 2FA and generate an App Password
GitHub Actions Setup:
- Fork this repository
- Go to Settings → Secrets and variables → Actions
- Add secret
ALITHIA_CONFIG_JSONwith your configuration (see below) - Agent runs automatically daily at 01:00 UTC
2. Configuration
Create a JSON configuration with your credentials. See alithia_config_example.json for a complete example.
Storage Backend
Alithia uses Supabase (PostgreSQL) as the default stateful storage backend, with automatic fallback to SQLite when Supabase is unavailable. This enables:
- Persistent caching of Zotero libraries and parsed papers
- Continuous paper feeding that handles ArXiv indexing delays
- Deduplication to prevent duplicate email notifications
- Query history tracking for PaperLens interactions
Quick Setup
- Create a Supabase project at supabase.com (free tier available)
- Run the migration: Copy contents of
alithia/storage/migrations/001_initial_schema.sqlto Supabase SQL Editor - Configure Alithia: Add Supabase credentials to your config:
{
"storage": {
"backend": "supabase",
"fallback_to_sqlite": true,
"user_id": "your_email@example.com"
},
"supabase": {
"url": "https://xxxxx.supabase.co",
"anon_key": "your_anon_key",
"service_role_key": "your_service_role_key"
}
}
Storage Options
- Supabase (default): Cloud PostgreSQL with automatic backups, full-text search, and multi-user support
- SQLite (fallback): Local single-file database, works offline, no setup required
For detailed setup instructions, see docs/SUPABASE_SETUP.md.
License
MIT
Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Add tests
- Submit a pull request
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file alithia-0.2.7.tar.gz.
File metadata
- Download URL: alithia-0.2.7.tar.gz
- Upload date:
- Size: 52.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c2f206784dd672688de51905ba9e7acfe0f90c5d1fefd1b4262b8e90e8acb218
|
|
| MD5 |
da7da95383e709541cec2cd8cbcd0df2
|
|
| BLAKE2b-256 |
7929df1fe2b82ed2bfbb8c2940ae2713d2c47063d9b903b0ba055343d8e7707b
|
Provenance
The following attestation bundles were made for alithia-0.2.7.tar.gz:
Publisher:
release.yml on caesar0301/alithia
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alithia-0.2.7.tar.gz -
Subject digest:
c2f206784dd672688de51905ba9e7acfe0f90c5d1fefd1b4262b8e90e8acb218 - Sigstore transparency entry: 790655094
- Sigstore integration time:
-
Permalink:
caesar0301/alithia@5449d62268910568d4f9e239c587ea3448c1e727 -
Branch / Tag:
refs/tags/0.2.7 - Owner: https://github.com/caesar0301
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5449d62268910568d4f9e239c587ea3448c1e727 -
Trigger Event:
release
-
Statement type:
File details
Details for the file alithia-0.2.7-py3-none-any.whl.
File metadata
- Download URL: alithia-0.2.7-py3-none-any.whl
- Upload date:
- Size: 62.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7235dc3aea423af520a6b54350ff663d7322af48d0b102c1201f8cf2a3f5cc9b
|
|
| MD5 |
dacd05f5aa108ea8cc44fa41b89d84e5
|
|
| BLAKE2b-256 |
fd0cc18788ad9b9589d1bb13416257e6d2c265e8fc04642a5b947b65c921d352
|
Provenance
The following attestation bundles were made for alithia-0.2.7-py3-none-any.whl:
Publisher:
release.yml on caesar0301/alithia
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
alithia-0.2.7-py3-none-any.whl -
Subject digest:
7235dc3aea423af520a6b54350ff663d7322af48d0b102c1201f8cf2a3f5cc9b - Sigstore transparency entry: 790655095
- Sigstore integration time:
-
Permalink:
caesar0301/alithia@5449d62268910568d4f9e239c587ea3448c1e727 -
Branch / Tag:
refs/tags/0.2.7 - Owner: https://github.com/caesar0301
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5449d62268910568d4f9e239c587ea3448c1e727 -
Trigger Event:
release
-
Statement type: