Daily Literature Digest
Overview
Use this skill to create a user's own daily literature digest. The bundled fetch script gathers open metadata and abstracts; Codex writes the AI interpretation, saves the archive, sends email through Gmail when connected, and creates the recurring automation.
Do not read paywalled full text or auto-login to university/publisher sites during the unattended daily run. Full-text follow-up is a separate explicit task after the user logs in themselves or provides PDFs.
Setup Workflow
- Confirm or infer the user's settings:
- Recipient email for the digest.
- Research keywords, grouped by theme when useful.
- Language: ask if unclear; default to
zh-CN. - Timezone: ask if unclear; otherwise use the user's local timezone.
- Schedule time: default to
09:00. - Sources: default to Elsevier, Springer Nature, Wiley, Taylor & Francis/Routledge, and arXiv.
- Copy
scripts/daily_literature_digest.pyinto the user's workspace, plusscripts/markdown_to_docx.pyonly when DOCX output is requested. - Create
daily-literature-digest.config.jsonin the workspace:
If using default publishers, omit the{ "recipient_email": "user@example.com", "crossref_mailto": "user@example.com", "language": "zh-CN", "timezone": "Europe/London", "schedule_time": "09:00", "output_dir": "daily-literature-digests", "keyword_groups": [ { "label": "building energy", "terms": ["building energy", "building performance", "HVAC"] } ], "publishers": "use defaults", "include_arxiv": true, "rows": 20, "arxiv_rows": 25, "max_papers": 30 }publisherskey or replace it with the publisher objects inreferences/default-config.md; do not leave the string value in a real config. - Run a dry fetch:
python scripts\daily_literature_digest.py --config daily-literature-digest.config.json fetch --include-seen - Read the printed JSON file and write the digest:
- Save full Markdown to
daily-literature-digests\YYYY-MM-DD.md. - Summarize using only title, abstract, keywords, subject tags, DOI, journal, authors, publisher, and source metadata.
- Mark arXiv items as preprints.
- If there are no matches, still write a short no-results digest.
- Save full Markdown to
- For no-abstract/title-only papers, write
daily-literature-digests\fulltext-inbox\to-download-YYYY-MM-DD.mdwith DOI/URL and a note that no abstract/full text was read. - Check Gmail:
- Call Gmail profile if Gmail tools are available.
- If Gmail is connected, send a concise email body with the full local Markdown path.
- If Gmail is unavailable, do not ask for SMTP credentials; tell the user to connect Gmail and record email status as
not-configuredorfailed.
- Mark success only after the Markdown archive exists:
python scripts\daily_literature_digest.py --config daily-literature-digest.config.json mark-success --data-file <JSON_PATH> --digest-file <DIGEST_PATH> --email-status <sent|failed|not-configured> - Create a Codex cron automation at the user's configured local time. For 09:00 daily:
FREQ=DAILY;BYHOUR=9;BYMINUTE=0;BYSECOND=0
Summary Rules
- Treat matching as inclusive: one keyword term is enough to include a paper.
- Use priority for ranking, not for exclusion.
- For each paper include title, source/publisher, journal/preprint source, date, authors, DOI/URL, matched keywords, priority, research goal, method, main result, relevance to the user, and next action.
- If the abstract is missing, include the paper only as a title-level candidate and state clearly:
No abstract/full text was available; this is a title-level judgment only. - Do not infer research goal, method, or result for no-abstract papers.
- Mention Crossref, OpenAlex, or arXiv API errors in the digest and summarize successfully fetched results.
Automation Prompt Requirements
The automation prompt must include:
- Exact workspace path and Python executable or
pythoncommand that works in that workspace. - Exact config path.
- Exact fetch command using
--config. - Recipient email, digest language, schedule time, timezone, and output directory.
- Instruction to summarize abstracts/open metadata only during the unattended run.
- Instruction to use Gmail connector if available.
- Instruction to call
mark-successwithsent,failed, ornot-configured. - A warning that local Codex automations may not run if the computer is asleep or the local runner is not active.
Full-Text Follow-Up
When the user says they have logged in to ScienceDirect, a university library, or another publisher site:
- Do not ask for passwords.
- Use only the current active browser/session or PDFs the user downloaded into
daily-literature-digests\fulltext-inbox. - Process only the explicit batch/list the user asked about.
- Download/read accessible PDFs or article pages only when allowed by the active session.
- Summarize each full-text paper with topic, method, data/case, main results, limitations, and relevance.
- Save summaries to
daily-literature-digests\fulltext-summaries\YYYY-MM-DD-fulltext.md. - Do not create unattended daily publisher-download automation.
References
- Read
references/default-config.mdwhen a user asks what defaults are used or wants a starter configuration. - Use
scripts/markdown_to_docx.pyonly when the user explicitly wants DOCX output.