|
|
||
|---|---|---|
| .. | ||
| README.md | ||
| delete.md | ||
| ingest.md | ||
| query.md | ||
| update.md | ||
README.md
📟 CLI 命令行工具
状态:已完成 | 最后更新:2026-06-25
📋 设计目标
- 与 MCP 功能对等,提供脚本化、批量操作的接口
- 覆盖笔记管理、语义查询、交互问答等核心场景
- 支持
algonotes命令和python -m scripts.<module>两种调用方式
📁 目录结构
scripts/
├── __init__.py
├── cli.py # algonotes 统一入口
├── ingest.py # 导入笔记
├── delete.py # 删除笔记
├── update.py # 更新笔记
├── query.py # 查询笔记
├── chat.py # 交互式问答
│
└── tui/ # TUI 界面模块(规划中)
└── ...
🚀 调用方式
方式 1:algonotes 命令(推荐)
uv run algonotes ingest -i ./my_notes/
uv run algonotes query list
uv run algonotes chat
方式 2:独立模块
uv run python -m scripts.ingest -i ./my_notes/
uv run python -m scripts.query list
📋 命令总览
| 分类 | 命令 | 用途 | 详见 |
|---|---|---|---|
| 增 | ingest |
导入笔记 | ingest.md |
| 改 | update content |
更新笔记内容 | update.md |
| 改 | update metadata |
更新笔记元数据 | update.md |
| 删 | delete |
删除笔记 | delete.md |
| 查 | query show/list/info/search |
查询笔记 | query.md |
| 查 | query export |
导出笔记(Obsidian) | query.md |
| 查 | query ask |
RAG 问答 | query.md |
⚙️ 通用参数
所有输出类命令(show、list、info、search)支持以下参数:
| 参数 | 说明 | 默认值 |
|---|---|---|
--json |
输出到 JSON 文件(指定文件路径) | 若使用此参数,必须指定文件路径 |
使用示例:
# 默认输出到 stdout(人类可读)
algonotes search "树状数组"
# 输出到 JSON 文件
algonotes search "树状数组" --json results.json
JSON 输出格式:各命令 JSON 格式详见对应文档
| 命令 | JSON 格式 |
|---|---|
show |
query.md |
list |
query.md |
info |
query.md |
search |
query.md |
🔄 CLI vs MCP 对照
| 功能 | CLI 命令 | MCP 工具 |
|---|---|---|
| 导入笔记 | algonotes ingest |
ingest |
| 更新内容 | algonotes update content |
update |
| 更新元数据 | algonotes update metadata |
metadata |
| 删除笔记 | algonotes delete |
delete |
| 查看原文 | algonotes query show |
show |
| 列出笔记 | algonotes query list |
list |
| 语义搜索 | algonotes query search |
search |
| RAG 问答 | algonotes query ask |
ask |
| 导出笔记 | algonotes query export |
export |
⚙️ 配置
已在 pyproject.toml 中注册:
[project.scripts]
algonotes = "scripts.cli:main"