From f728365df8fea61accadfb80a9ae81a24acbc31b Mon Sep 17 00:00:00 2001 From: qyh15 Date: Wed, 27 May 2026 20:28:54 +0800 Subject: [PATCH] Rewrite README in Chinese --- README.md | 169 ++++++++++++++++++++++++++++-------------------------- 1 file changed, 88 insertions(+), 81 deletions(-) diff --git a/README.md b/README.md index 7d50f84..513e1ad 100644 --- a/README.md +++ b/README.md @@ -1,147 +1,154 @@ # QQnote-skill -QQnote-skill is a Zotero + Obsidian literature-note tool for Codex. It generates -AI literature notes from Zotero items, writes them as Zotero child notes, audits -missing generated notes, and maintains Obsidian literature-note views. +QQnote-skill 是一个面向 Zotero + Obsidian 文献工作流的 Codex skill。它的核心任务是使用 DeepSeek/AwesomeGPT 从 Zotero 文献条目生成 AI 文献笔记,并将结果写入 Zotero child note,或者把选中文献整理成 Markdown 对比表。 -QQnote is intentionally narrow: it prepares literature-note inputs. It does not -decide manuscript novelty, target-journal positioning, strong/weak related-paper -status, reviewer risk, or citation necessity. Those decisions belong to QQsci -when QQnote is used inside the QQsci workflow. +QQnote 的定位很窄:它只负责生成和维护文献笔记输入,不负责论文层面的判断。 -## Core Workflows +## 核心职责 -### Initialize Private Config +QQnote 负责: -Use local-only config for Zotero and DeepSeek/AwesomeGPT keys: +- 读取 Zotero 文献元数据、摘要、附件全文或可用的本地全文 +- 调用 DeepSeek/AwesomeGPT 生成 AI 文献笔记 +- 将笔记写入 Zotero child note +- 批量处理多个 Zotero 条目 +- 跳过或替换已有 AI 笔记 +- 审计哪些 Zotero 条目缺少 AI 笔记 +- 维护 Obsidian 文献笔记和 Dataview 相关辅助内容 -```powershell -py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\init_private_config.py" -``` +QQnote 不负责: -The committed template is: +- 判断某篇文献是否强相关或弱相关 +- 判断某篇文献是否必须引用 +- 判断论文创新性是否足够 +- 判断 reviewer 是否会接受某个证据链 +- 检查投稿包、图表、SI、Cover Letter 或 TOC + +这些论文层面的判断应交给 QQsci。 + +## 初始化本地配置 + +公开配置模板: ```text config/config.template.json ``` -The real local file is: +真实本地配置: ```text config/config.local.json ``` -Do not commit `config/config.local.json`, print secrets, or paste API keys into -chat. +可以用脚本初始化: -### Generate Zotero Child Notes +```powershell +py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\init_private_config.py" +``` + +不要提交 `config/config.local.json`,不要在聊天、README、日志或终端输出中泄露 API key。 + +## 生成 Zotero child note + +单篇文献: ```powershell py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --skip-existing ``` -Use this when a Zotero item needs an AI-generated child note. For long runs, -prefer small batches and rerun with `--skip-existing` after interruptions. +多篇文献: -For deeper notes, use the full-detail mode supported by the installed script, -for example: +```powershell +py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-keys "SXAIQUJT X7GJZ627 ZCZXGRAM" --limit 0 --skip-existing --fulltext-chars 4000 +``` + +深度精读或满血版本: ```powershell py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --mode deep --fulltext-chars 80000 --max-tokens 12000 --replace-existing ``` -### Audit Missing Generated Notes +批量运行时建议每次处理 20-30 篇,并使用 `--skip-existing` 或 `--replace-existing` 避免重复写入 Zotero child note。 + +## 审计缺失笔记 ```powershell py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --keys-only ``` -Use deterministic audit scripts for library state. Do not ask DeepSeek to decide -which Zotero items are missing notes. +文献库状态、缺失笔记和重复检测应使用确定性脚本完成,不要让 DeepSeek 自由判断。 -## Relationship With QQsci +## 文献对比表 -When used by QQsci: +如果安装版本包含 `summarize_zotero_table.py`,可以用它把选中文献整理成 Markdown 表格: -1. QQsci identifies which literature inputs are needed. -2. QQnote generates or refreshes Zotero child notes. -3. QQsci performs keyword extraction, strong/weak related-paper screening, - target-journal positioning, comparative audit, manuscript revision, and Word - DOI-only citation comments. +```powershell +py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\summarize_zotero_table.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-keys "SXAIQUJT X7GJZ627" --batch-size 3 --out "C:\Users\qyh15\Documents\Obsidian Vault\99 misc\literature-comparison-table.md" +``` -QQnote should not decide whether a paper is strongly related, weakly related, -required for citation, or sufficient as reviewer evidence. +这个表格只是给 QQsci 或作者使用的结构化输入,不等于最终论文判断。 -QQsci may call QQnote through a wrapper that injects QQsci-level DeepSeek and -Zotero configuration into QQnote's expected environment variables. +## 与 QQsci 的关系 -## Standalone Configuration +当 QQnote 被 QQsci 调用时: -QQnote must also remain usable independently. In standalone mode it reads: +1. QQsci 决定需要哪些文献输入。 +2. QQnote 生成 Zotero child note 或 Markdown 文献表。 +3. QQsci 使用这些笔记和表格进行关键词提取、强弱相关筛选、目标期刊定位、比较式审稿、正文修改和 Word DOI-only 批注。 -- process environment variables -- local private config -- vault `.env`, if supported by the installed script +QQnote 可以单独使用;QQsci 调用 QQnote 时,也可以通过 wrapper 注入 QQsci 级别的 DeepSeek/Zotero 配置。 + +## 独立运行配置 + +QQnote 独立运行时可以读取: + +- 进程环境变量 +- 本地私有配置 +- vault `.env` - AwesomeGPT/Zotero profile preferences -Expected environment variables include: +常用环境变量包括: - `AWESOMEGPT_API_KEY` - `AWESOMEGPT_BASE_URL` - `AWESOMEGPT_MODEL` -- `ZOTERO_API_KEY` for Zotero Web API writes -- `ZOTERO_USER_ID` when needed +- `ZOTERO_API_KEY` +- `ZOTERO_USER_ID` -Never store API keys in `SKILL.md`, references, committed files, zip files, -terminal output, or chat. If keys appear in chat or logs, rotate them. +## Obsidian 相关文件 -## Obsidian Notes - -Read these references before modifying Obsidian behavior: +修改 Obsidian 模板、Dataview 或文献库维护逻辑前,先阅读: - `references/obsidian-integration.md` - `references/obsidian-literature-maintenance.md` -Default vault: +默认 vault: ```text C:\Users\qyh15\Documents\Obsidian Vault ``` -Default organization includes: +## 安装位置 -- `00 Templater`: source templates, prompts, and audit cache -- literature-note folders exported or linked from Zotero -- Dataview dashboards for browsing literature - -## Repository Contents - -```text -. -|-- SKILL.md -|-- README.md -|-- agents/ -| `-- openai.yaml -|-- config/ -| `-- config.template.json -|-- references/ -| |-- obsidian-integration.md -| |-- obsidian-literature-maintenance.md -| |-- upgrade-plan.md -| `-- upstream-obsidian-skills.md -`-- scripts/ - |-- audit_zotero_ai_notes.py - |-- generate_zotero_ai_note.py - `-- init_private_config.py -``` - -## Installed Location - -For Codex discovery, install under: +Codex 识别路径: ```text C:\Users\qyh15\.codex\skills\QQnote-skill ``` -Keep source and installed copies synchronized when updating scripts or -documentation. +远程仓库: + +```text +git@git.qyhhh.top:Skills/QQnote-skill.git +``` + +## 依赖和协作 skill + +QQnote 当前或未来会依赖/协作以下 skill: + +- `QQsci`:科研论文工作流总调度器,消费 QQnote 生成的文献笔记和文献表格 +- `zotero`:Zotero 本地 API、Zotero Web API、BibTeX/条目读取等底层能力 +- `google-drive`:当文献 PDF 或论文库位于 Google Drive 时,用于定位和读取文件 +- `nature-reader`:未来可用于将新文献做全文阅读、图表定位和中英对照,再交给 QQnote 生成笔记 +- `nature-citation`:未来可用于把 QQnote 文献结果进一步转成 DOI 候选和 claim-reference 支撑 +- `QQwrite`:未来可消费 QQnote 的文献笔记,用于正文写作和段落重写