QQnote-skill/README.md

4.2 KiB

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 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.

Core Workflows

Initialize Private Config

Use local-only config for Zotero and DeepSeek/AwesomeGPT keys:

py "$env:USERPROFILE\.codex\skills\QQnote-skill\scripts\init_private_config.py"

The committed template is:

config/config.template.json

The real local file is:

config/config.local.json

Do not commit config/config.local.json, print secrets, or paste API keys into chat.

Generate Zotero Child Notes

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:

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

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.

Relationship With QQsci

When used by QQsci:

  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.

QQnote should not decide whether a paper is strongly related, weakly related, required for citation, or sufficient as reviewer evidence.

QQsci may call QQnote through a wrapper that injects QQsci-level DeepSeek and Zotero configuration into QQnote's expected environment variables.

Standalone Configuration

QQnote must also remain usable independently. In standalone mode it reads:

  • process environment variables
  • local private config
  • vault .env, if supported by the installed script
  • 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

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 Notes

Read these references before modifying Obsidian behavior:

  • references/obsidian-integration.md
  • references/obsidian-literature-maintenance.md

Default vault:

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

.
|-- 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:

C:\Users\qyh15\.codex\skills\QQnote-skill

Keep source and installed copies synchronized when updating scripts or documentation.