Skip to content

Latest commit

 

History

23 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

LiteratureCLI

面向 code agent 的学术文献管理工具。提供 CLI 接口和 pi skill,支持从多个来源导入论文、检索管理、导出引用。

功能

  • 多来源导入:统一 lit add <identifier> 自动识别 arXiv、DOI、OpenReview、DBLP、标题、本地 PDF、BibTeX、RIS;旧子命令保留
  • 智能元数据提取:结构化 API 直接解析;DBLP venue 规范化与论文摘要使用 LLM 辅助;本地 PDF 仅导入为最小条目
  • 检索与过滤:全文搜索、模糊搜索、多字段组合过滤
  • 引用检索:基于 Crossref 拉取单篇论文参考文献,支持 DOI 和标题匹配
  • Collection 管理:自定义分组,批量操作
  • 作者与机构管理:独立 Author/Affiliation CRUD,支持个人主页、ORCID、OpenAlex、Semantic Scholar、DBLP PID、学校/院系两层机构
  • 多格式导出:BibTeX、IEEE、Markdown、HTML、JSON
  • 平台标识符:为论文与作者存储结构化平台 ID,默认输出平台 URL,可通过 --key 查看原始 ID/key
  • PDF 管理:arXiv、OpenReview、Unpaywall、OpenAlex、Semantic Scholar fallback 自动下载;可选 MinerU 自动解析并落盘结构化全文

快速开始

# 开发模式安装
pip install -e .

# 或用 uv(推荐)
uv pip install -e ".[dev]"

# 全局安装,任意目录可用 lit 命令
uv tool install .

# 配置 OpenAI API key(论文摘要与 DBLP venue 规范化需要)
mkdir -p ~/.config/litcli
cp .litcli/auth.example.toml ~/.config/litcli/auth.toml
# 如需 MinerU 全文解析,再配置 MinerU API key

# 导入一篇论文
lit add 1706.03762

# 搜索
lit search "attention mechanism" --json

# 拉取一篇论文的参考文献列表
lit references 42 --json

# 补充作者机构信息
lit author add "Geoffrey Hinton" --institution "University of Toronto" --json
lit affiliation list --json

# 导出 BibTeX
lit export --format bibtex --collection "my-papers"

文档

  • 架构说明 — 目录结构、各层职责、数据流
  • CLI 接口 — 完整命令参考和实现说明
  • Pi Skill — agent 使用规范、路由规则、工作流示例

项目状态

模块 状态
ng/db/ ✅ 完成(移植自 papercli)
ng/services/ ✅ 完成(移植并精简)
lit/ CLI 层 ✅ 完成
skills/literature-cli/ ✅ 完成

Roadmap

  • 只读 SQL 查询lit db query "SELECT ..." --json,对所有表执行任意只读 SQL,输出 JSON 行,供 agent 在结构化命令不够用时灵活查询

配置

变量 默认值 说明
OPENAI_API_KEY 可选,用于论文摘要与 DBLP venue 规范化
OPENAI_MODEL gpt-4o-mini LLM 模型
LITCLI_DATA_DIR ~/.litcli 数据目录
LITCLI_PDF_PAGES 10 论文摘要读取 PDF 页数
UNPAYWALL_EMAIL Unpaywall polite email
OPENALEX_EMAIL OpenAlex polite pool email
SEMANTIC_SCHOLAR_API_KEY Semantic Scholar 可选 API key

参考 .litcli/config.example.toml.litcli/auth.example.toml 配置。

配置加载优先级:

  1. 已导出的环境变量,例如 export OPENAI_API_KEY=...
  2. 当前工作目录及其父目录中最近的项目级 .litcli/config.toml / .litcli/auth.toml
  3. 用户级 ~/.config/litcli/config.toml / ~/.config/litcli/auth.toml

项目级配置只按当前工作目录发现,与 lit 安装位置无关;因此在项目目录内运行 lit 时,总会优先使用该项目的 .litcli/。需要排查命中的配置时,可运行 lit config --json

来源

服务层和数据库层移植自 papercli(MIT License),移除了 TUI、同步、chat 等功能,保留核心文献管理逻辑。

About

Academic literature management tool for code agents. Provides a CLI interface and agent skill.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages