agent-lit 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- agent_lit-0.3.0/.gitignore +10 -0
- agent_lit-0.3.0/LICENSE +21 -0
- agent_lit-0.3.0/PKG-INFO +130 -0
- agent_lit-0.3.0/README.md +113 -0
- agent_lit-0.3.0/ROADMAP.md +22 -0
- agent_lit-0.3.0/alit/__init__.py +0 -0
- agent_lit-0.3.0/alit/__main__.py +3 -0
- agent_lit-0.3.0/alit/scripts/.gitkeep +0 -0
- agent_lit-0.3.0/alit/scripts/__init__.py +0 -0
- agent_lit-0.3.0/alit/scripts/db.py +687 -0
- agent_lit-0.3.0/alit/scripts/lit.py +1210 -0
- agent_lit-0.3.0/alit/scripts/pagerank.py +63 -0
- agent_lit-0.3.0/alit/scripts/recommend.py +62 -0
- agent_lit-0.3.0/alit/scripts/search.py +38 -0
- agent_lit-0.3.0/alit/scripts/synthesize.py +147 -0
- agent_lit-0.3.0/alit/skill/SKILL.md +94 -0
- agent_lit-0.3.0/alit/tests/__init__.py +0 -0
- agent_lit-0.3.0/alit/tests/test_core.py +633 -0
- agent_lit-0.3.0/pyproject.toml +35 -0
- agent_lit-0.3.0/uv.lock +156 -0
agent_lit-0.3.0/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Hangyu Zhou
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
agent_lit-0.3.0/PKG-INFO
ADDED
|
@@ -0,0 +1,130 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agent-lit
|
|
3
|
+
Version: 0.3.0
|
|
4
|
+
Summary: Persistent memory for AI agents doing literature review. Zero dependencies. SQLite-only.
|
|
5
|
+
Project-URL: Repository, https://github.com/Zhou-Hangyu/alit
|
|
6
|
+
Author: Hangyu Zhou
|
|
7
|
+
License-Expression: MIT
|
|
8
|
+
License-File: LICENSE
|
|
9
|
+
Keywords: agents,alit,literature-review,research,sqlite
|
|
10
|
+
Classifier: Development Status :: 4 - Beta
|
|
11
|
+
Classifier: Intended Audience :: Science/Research
|
|
12
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
13
|
+
Classifier: Programming Language :: Python :: 3
|
|
14
|
+
Classifier: Topic :: Scientific/Engineering
|
|
15
|
+
Requires-Python: >=3.10
|
|
16
|
+
Description-Content-Type: text/markdown
|
|
17
|
+
|
|
18
|
+
# (-o-) alit
|
|
19
|
+
|
|
20
|
+
Your AI agent reads papers so you don't have to.
|
|
21
|
+
|
|
22
|
+
`pip install alit` → zero dependencies, SQLite-only, works with any coding agent.
|
|
23
|
+
|
|
24
|
+
Got tokens to burn? Let your agent read 50 papers overnight and hand you a synthesis in the morning.
|
|
25
|
+
|
|
26
|
+
Tell your agent:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
Use alit to manage my literature review. See https://github.com/Zhou-Hangyu/alit
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
## Why alit
|
|
33
|
+
|
|
34
|
+
Your agent can web-search papers anytime — but forgets everything next session. alit is persistent memory. One agent reads 50 papers, another agent queries that knowledge instantly. Knowledge compounds across sessions.
|
|
35
|
+
|
|
36
|
+
## How it works
|
|
37
|
+
|
|
38
|
+
```
|
|
39
|
+
.alit/
|
|
40
|
+
├── papers.db ← one SQLite file, entire knowledge base
|
|
41
|
+
└── pdfs/ ← auto-downloaded from arXiv
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
No servers. No API keys. No vector databases. No setup beyond `pip install`.
|
|
45
|
+
|
|
46
|
+
## Install
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
pip install alit # or: uv add alit
|
|
50
|
+
alit init # creates .alit/ in your project
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
The agent skill auto-installs on first run.
|
|
54
|
+
|
|
55
|
+
## Set your taste
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
alit taste "I'm into multimodal foundation models and how they learn cross-modal
|
|
59
|
+
representations. Love papers with clean ablations over pure benchmark chasing.
|
|
60
|
+
Especially interested in vision-language grounding and embodied AI."
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Quick start
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
alit add "https://arxiv.org/abs/1706.03762" # fetches metadata + PDF
|
|
67
|
+
alit import library.bib # or dump your Zotero/Mendeley
|
|
68
|
+
alit recommend 5 # ranked by your taste
|
|
69
|
+
alit ask "What are the key attention mechanisms?" --depth 2
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
## Update
|
|
73
|
+
|
|
74
|
+
```bash
|
|
75
|
+
pip install --upgrade alit
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Commands
|
|
79
|
+
|
|
80
|
+
| Command | What it does |
|
|
81
|
+
|---------|-------------|
|
|
82
|
+
| `alit init` | Initialize `.alit/` |
|
|
83
|
+
| `alit add <title-or-url>` | Add paper (auto-enriches arXiv, auto-tags) |
|
|
84
|
+
| `alit find <query>` | Search arXiv/S2 for papers by topic |
|
|
85
|
+
| `alit import <file>` | Bulk-add from URL file or BibTeX (.bib) |
|
|
86
|
+
| `alit sync` | Import from remembered BibTeX source (Zotero, etc.) |
|
|
87
|
+
| `alit enrich` | Batch-fetch metadata for papers missing abstracts |
|
|
88
|
+
| `alit search <query>` | BM25 full-text search |
|
|
89
|
+
| `alit recommend [N]` | Reading queue ranked by score |
|
|
90
|
+
| `alit ask <question>` | Cross-paper synthesis via funnel retrieval |
|
|
91
|
+
| `alit read <id>` | Guided reading view |
|
|
92
|
+
| `alit show <id>` | Paper details + citations |
|
|
93
|
+
| `alit list` | List papers |
|
|
94
|
+
| `alit note <id> <text>` | Append reading notes |
|
|
95
|
+
| `alit summarize <id>` | Store summary with model provenance |
|
|
96
|
+
| `alit cite <from> <to>` | Add citation edge |
|
|
97
|
+
| `alit status <id> <s>` | Set reading status |
|
|
98
|
+
| `alit tag <id> <tags>` | Set tags |
|
|
99
|
+
| `alit taste [text]` | Set or show your research taste |
|
|
100
|
+
| `alit progress` | Visual progress dashboard |
|
|
101
|
+
| `alit stats` | Collection overview |
|
|
102
|
+
| `alit orphans` | Find citations to missing papers |
|
|
103
|
+
| `alit attach <id> <pdf>` | Attach local PDF |
|
|
104
|
+
| `alit fetch-pdf <id>` | Download PDF from arXiv |
|
|
105
|
+
| `alit delete <id>` | Remove paper + citations |
|
|
106
|
+
| `alit export [--format X]` | Export as JSON or markdown |
|
|
107
|
+
|
|
108
|
+
All commands support `--json`.
|
|
109
|
+
|
|
110
|
+
## Under the hood
|
|
111
|
+
|
|
112
|
+
- **Search**: BM25 via SQLite FTS5
|
|
113
|
+
- **Ranking**: PageRank on citation graph (pure Python)
|
|
114
|
+
- **Recommendations**: PageRank + recency + taste matching
|
|
115
|
+
- **Synthesis**: multi-stage funnel retrieval (~5K tokens to query 10K papers)
|
|
116
|
+
- **Enrichment**: arXiv API (batched) with Semantic Scholar fallback
|
|
117
|
+
- **Backward compatible**: schema auto-migrates on upgrade
|
|
118
|
+
|
|
119
|
+
## Development
|
|
120
|
+
|
|
121
|
+
```bash
|
|
122
|
+
git clone https://github.com/Zhou-Hangyu/alit
|
|
123
|
+
cd alit
|
|
124
|
+
uv sync
|
|
125
|
+
uv run pytest
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
## License
|
|
129
|
+
|
|
130
|
+
MIT
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
# (-o-) alit
|
|
2
|
+
|
|
3
|
+
Your AI agent reads papers so you don't have to.
|
|
4
|
+
|
|
5
|
+
`pip install alit` → zero dependencies, SQLite-only, works with any coding agent.
|
|
6
|
+
|
|
7
|
+
Got tokens to burn? Let your agent read 50 papers overnight and hand you a synthesis in the morning.
|
|
8
|
+
|
|
9
|
+
Tell your agent:
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
Use alit to manage my literature review. See https://github.com/Zhou-Hangyu/alit
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Why alit
|
|
16
|
+
|
|
17
|
+
Your agent can web-search papers anytime — but forgets everything next session. alit is persistent memory. One agent reads 50 papers, another agent queries that knowledge instantly. Knowledge compounds across sessions.
|
|
18
|
+
|
|
19
|
+
## How it works
|
|
20
|
+
|
|
21
|
+
```
|
|
22
|
+
.alit/
|
|
23
|
+
├── papers.db ← one SQLite file, entire knowledge base
|
|
24
|
+
└── pdfs/ ← auto-downloaded from arXiv
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
No servers. No API keys. No vector databases. No setup beyond `pip install`.
|
|
28
|
+
|
|
29
|
+
## Install
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
pip install alit # or: uv add alit
|
|
33
|
+
alit init # creates .alit/ in your project
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
The agent skill auto-installs on first run.
|
|
37
|
+
|
|
38
|
+
## Set your taste
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
alit taste "I'm into multimodal foundation models and how they learn cross-modal
|
|
42
|
+
representations. Love papers with clean ablations over pure benchmark chasing.
|
|
43
|
+
Especially interested in vision-language grounding and embodied AI."
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Quick start
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
alit add "https://arxiv.org/abs/1706.03762" # fetches metadata + PDF
|
|
50
|
+
alit import library.bib # or dump your Zotero/Mendeley
|
|
51
|
+
alit recommend 5 # ranked by your taste
|
|
52
|
+
alit ask "What are the key attention mechanisms?" --depth 2
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## Update
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
pip install --upgrade alit
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Commands
|
|
62
|
+
|
|
63
|
+
| Command | What it does |
|
|
64
|
+
|---------|-------------|
|
|
65
|
+
| `alit init` | Initialize `.alit/` |
|
|
66
|
+
| `alit add <title-or-url>` | Add paper (auto-enriches arXiv, auto-tags) |
|
|
67
|
+
| `alit find <query>` | Search arXiv/S2 for papers by topic |
|
|
68
|
+
| `alit import <file>` | Bulk-add from URL file or BibTeX (.bib) |
|
|
69
|
+
| `alit sync` | Import from remembered BibTeX source (Zotero, etc.) |
|
|
70
|
+
| `alit enrich` | Batch-fetch metadata for papers missing abstracts |
|
|
71
|
+
| `alit search <query>` | BM25 full-text search |
|
|
72
|
+
| `alit recommend [N]` | Reading queue ranked by score |
|
|
73
|
+
| `alit ask <question>` | Cross-paper synthesis via funnel retrieval |
|
|
74
|
+
| `alit read <id>` | Guided reading view |
|
|
75
|
+
| `alit show <id>` | Paper details + citations |
|
|
76
|
+
| `alit list` | List papers |
|
|
77
|
+
| `alit note <id> <text>` | Append reading notes |
|
|
78
|
+
| `alit summarize <id>` | Store summary with model provenance |
|
|
79
|
+
| `alit cite <from> <to>` | Add citation edge |
|
|
80
|
+
| `alit status <id> <s>` | Set reading status |
|
|
81
|
+
| `alit tag <id> <tags>` | Set tags |
|
|
82
|
+
| `alit taste [text]` | Set or show your research taste |
|
|
83
|
+
| `alit progress` | Visual progress dashboard |
|
|
84
|
+
| `alit stats` | Collection overview |
|
|
85
|
+
| `alit orphans` | Find citations to missing papers |
|
|
86
|
+
| `alit attach <id> <pdf>` | Attach local PDF |
|
|
87
|
+
| `alit fetch-pdf <id>` | Download PDF from arXiv |
|
|
88
|
+
| `alit delete <id>` | Remove paper + citations |
|
|
89
|
+
| `alit export [--format X]` | Export as JSON or markdown |
|
|
90
|
+
|
|
91
|
+
All commands support `--json`.
|
|
92
|
+
|
|
93
|
+
## Under the hood
|
|
94
|
+
|
|
95
|
+
- **Search**: BM25 via SQLite FTS5
|
|
96
|
+
- **Ranking**: PageRank on citation graph (pure Python)
|
|
97
|
+
- **Recommendations**: PageRank + recency + taste matching
|
|
98
|
+
- **Synthesis**: multi-stage funnel retrieval (~5K tokens to query 10K papers)
|
|
99
|
+
- **Enrichment**: arXiv API (batched) with Semantic Scholar fallback
|
|
100
|
+
- **Backward compatible**: schema auto-migrates on upgrade
|
|
101
|
+
|
|
102
|
+
## Development
|
|
103
|
+
|
|
104
|
+
```bash
|
|
105
|
+
git clone https://github.com/Zhou-Hangyu/alit
|
|
106
|
+
cd alit
|
|
107
|
+
uv sync
|
|
108
|
+
uv run pytest
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## License
|
|
112
|
+
|
|
113
|
+
MIT
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# (-o-) alit roadmap
|
|
2
|
+
|
|
3
|
+
Features under consideration. Not committed to — needs battle testing first.
|
|
4
|
+
|
|
5
|
+
## Reading quality
|
|
6
|
+
|
|
7
|
+
- **Summarization prompts** — Guide agents on how to read papers and write good L4/L2. Different LLMs produce different quality. Needs real-world data before prescribing a format. Would live in `references/reading-guide.md` with just-in-time loading.
|
|
8
|
+
- **Structured L2** — Convention for agents to write L2 as JSON with methods/datasets/results/gaps. Enables experiment agents to query structured data directly.
|
|
9
|
+
|
|
10
|
+
## Discovery
|
|
11
|
+
|
|
12
|
+
- **`alit watch`** — Monitor topics, surface new papers matching taste. Self-contained: `alit find` with memory (tracks seen IDs, only shows new).
|
|
13
|
+
- **`alit related <id>`** — Paper-to-paper similarity within collection. BM25 on abstract + shared citations.
|
|
14
|
+
|
|
15
|
+
## Multi-session
|
|
16
|
+
|
|
17
|
+
- **`alit diff`** — What changed since last session. New papers, new summaries, status changes. Agents run this at session start to orient.
|
|
18
|
+
- **`alit map`** — Cluster papers by topic, show landscape. Useful at 30+ papers.
|
|
19
|
+
|
|
20
|
+
## Distribution
|
|
21
|
+
|
|
22
|
+
- **PyPI publish** — `pip install alit` for everyone, not just source installs.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|