diff --git a/README.md b/README.md index 9ef0487..ca52b61 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Zotero-Obsidian 文献工作流 Skill +# MYwrite 这是一个用于 Zotero 和 Obsidian 文献阅读流程的 Codex skill。普通使用者不需要手动运行脚本,只需要在 Codex 里用自然语言提出任务,AI 会根据 `SKILL.md` 和配套脚本完成检查、生成、批处理或维护工作。 @@ -36,27 +36,27 @@ config/config.local.json 可以直接在 Codex 里这样说: ```text -使用 zotero-obsidian-literature skill,检查我的 Zotero 文库里哪些文献还没有生成 AI 阅读笔记。 +使用 MYwrite skill,检查我的 Zotero 文库里哪些文献还没有生成 AI 阅读笔记。 ``` ```text -使用 zotero-obsidian-literature skill,为这个 Zotero 条目生成一条 AI 阅读笔记:SXAIQUJT。 +使用 MYwrite skill,为这个 Zotero 条目生成一条 AI 阅读笔记:SXAIQUJT。 ``` ```text -使用 zotero-obsidian-literature skill,给这些 Zotero 条目批量生成 AI 阅读笔记:SXAIQUJT、X7GJZ627、ZCZXGRAM。 +使用 MYwrite skill,给这些 Zotero 条目批量生成 AI 阅读笔记:SXAIQUJT、X7GJZ627、ZCZXGRAM。 ``` ```text -使用 zotero-obsidian-literature skill,从上次中断的位置继续生成文献笔记,跳过已经生成过的条目。 +使用 MYwrite skill,从上次中断的位置继续生成文献笔记,跳过已经生成过的条目。 ``` ```text -使用 zotero-obsidian-literature skill,帮我检查 Obsidian 文献阅读库的 Dataview 页面是否能正确展示 Zotero 笔记。 +使用 MYwrite skill,帮我检查 Obsidian 文献阅读库的 Dataview 页面是否能正确展示 Zotero 笔记。 ``` ```text -使用 zotero-obsidian-literature skill,整理我的文献阅读模板,让后续生成的 Zotero 子笔记更适合 Obsidian Dataview 使用。 +使用 MYwrite skill,整理我的文献阅读模板,让后续生成的 Zotero 子笔记更适合 Obsidian Dataview 使用。 ``` ## 批处理建议 diff --git a/SKILL.md b/SKILL.md index 28dd034..a080117 100644 --- a/SKILL.md +++ b/SKILL.md @@ -1,18 +1,18 @@ --- -name: zotero-obsidian-literature -description: Manage the user's Zotero-to-Obsidian literature workflow: batch-generate Zotero child-note AI literature notes from Obsidian templates, audit missing Zotero notes, clean empty Obsidian literature notes, create and refine Dataview literature dashboards, preserve Obsidian Markdown conventions, and package or back up the workflow skill without exposing API keys. Use when the user asks about Zotero AI notes, AwesomeGPT/DeepSeek literature notes, Obsidian literature-note cleanup, Dataview literature dashboards, Zotero note audit/resume, or upgrading this Zotero-Obsidian workflow. +name: MYwrite +description: Manage the user's Zotero-to-Obsidian literature workflow: batch-generate Zotero child-note AI literature notes from Obsidian templates, audit missing Zotero notes, clean empty Obsidian literature notes, create and refine Dataview literature dashboards, preserve Obsidian Markdown conventions, and package or back up the workflow skill without exposing API keys. Use when the user asks about MYwrite, Zotero AI notes, AwesomeGPT/DeepSeek literature notes, Obsidian literature-note cleanup, Dataview literature dashboards, Zotero note audit/resume, or upgrading this Zotero-Obsidian workflow. --- -# Zotero Obsidian Literature +# MYwrite Use this skill for the user's Zotero + Obsidian literature workflow. It covers Zotero child-note generation, deterministic audits, Obsidian literature-note maintenance, Dataview dashboards, and safe packaging/backups. Core scripts: ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\init_private_config.py" -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --skip-existing -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --keys-only +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\init_private_config.py" +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --skip-existing +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --keys-only ``` ## Requirements @@ -35,7 +35,7 @@ Use a local-only config for Zotero and DeepSeek/AwesomeGPT keys. The committed t Initialize or update it with hidden prompts: ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\init_private_config.py" +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\init_private_config.py" ``` Do not print the config contents. When checking setup, report only whether each key is present. Environment variables override the private config; the private config overrides AwesomeGPT preferences for fields that are present. @@ -45,13 +45,13 @@ Do not print the config contents. When checking setup, report only whether each ### Single item ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --skip-existing +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --item-key SXAIQUJT --skip-existing ``` ### Multiple items ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\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 +py "$env:USERPROFILE\.codex\skills\MYwrite\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 ``` ### Whole library @@ -59,7 +59,7 @@ py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\generate_z Use only after the user explicitly approves library-wide writes. ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --all --limit 0 --skip-existing --fulltext-chars 4000 +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\generate_zotero_ai_note.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --all --limit 0 --skip-existing --fulltext-chars 4000 ``` For long runs, prefer 20-30 item batches. If a run times out, rerun with `--skip-existing`; the script resumes by checking child notes for the source Zotero item link. @@ -69,8 +69,8 @@ For long runs, prefer 20-30 item batches. If a run times out, rerun with `--skip Do this deterministically; do not ask DeepSeek or another LLM to compare library state. ```powershell -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --rebuild -py "$env:USERPROFILE\.codex\skills\zotero-obsidian-literature\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --keys-only +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --rebuild +py "$env:USERPROFILE\.codex\skills\MYwrite\scripts\audit_zotero_ai_notes.py" --vault "C:\Users\qyh15\Documents\Obsidian Vault" --keys-only ``` The cache lives at `\00 Templater\.zotero-ai-notes-index.json`. Use `--refresh` or `--rebuild` when notes were edited outside this workflow. diff --git a/agents/openai.yaml b/agents/openai.yaml index fbdcdcc..eeba599 100644 --- a/agents/openai.yaml +++ b/agents/openai.yaml @@ -1,4 +1,4 @@ interface: - display_name: "Zotero Obsidian Literature" + display_name: "MYwrite" short_description: "Manage Zotero AI notes and Obsidian literature dashboards" - default_prompt: "Use $zotero-obsidian-literature to manage my Zotero AI notes, Obsidian literature notes, and Dataview dashboards." + default_prompt: "Use $MYwrite to manage my Zotero AI notes, Obsidian literature notes, and Dataview dashboards." diff --git a/scripts/init_private_config.py b/scripts/init_private_config.py index 7c878aa..fc3ab55 100644 --- a/scripts/init_private_config.py +++ b/scripts/init_private_config.py @@ -40,7 +40,7 @@ def write_private_config(path: Path, data: dict) -> None: def main() -> int: - parser = argparse.ArgumentParser(description="Create private local config for zotero-obsidian-literature.") + parser = argparse.ArgumentParser(description="Create private local config for MYwrite.") parser.add_argument("--config", default=str(DEFAULT_CONFIG)) args = parser.parse_args()