cnki-export — Claude Code skill: export CNKI papers to Zotero
Pulls citation data off a CNKI page and pushes it to Zotero or saves an RIS file. Useful when you are building a bibliography from Chinese journals.
npx skills add cookjohn/cnki-skills --skill cnki-export -a claude-codeWhat cnki-export does
The skill drives the browser: a script on a paper detail page or a search results page calls the CNKI export API and gets citation fields in three modes at once — GBTREFER, elearning and EndNote. A Python script then parses them and hands the item to Zotero.
Pick a mode with the argument: zotero (the default), ris, or gb for a GB/T 7714 citation string. On a results page you can export in bulk, because the input.cbItem checkbox values hold the same encrypted IDs as #export-id on a detail page. No need to open each paper. With a dozen papers that is far fewer tool calls.
Zotero desktop has to be running for the push, since the script talks to localhost:23119. On Windows Chinese JSON will not survive a direct bash handoff, so the data goes through a temp file and the Python script. Items land in whichever Zotero collection is currently selected — worth checking before a batch, or the papers end up in the wrong folder.
What it helps with
- push a CNKI paper's citation into Zotero in one step
- save citation data as an RIS file for another reference manager
- get a GB/T 7714 citation string
- export several papers straight from a search results page
- avoid Chinese encoding breakage on Windows
Example prompts for the agent
- export this paper to zotero
- save all checked papers as ris
- give me the gb citation for the paper on this page
How to install cnki-export
1Skills CLI (Vercel)
npx skills add cookjohn/cnki-skills --skill cnki-export -a claude-code2Manually: put the files in place
~/.claude/skills/cnki-export/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/cnki-export/
1Skills CLI (Vercel)
npx skills add cookjohn/cnki-skills --skill cnki-export -a codex2Manually: put the files in place
.agents/skills/cnki-export/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add cookjohn/cnki-skills --skill cnki-export -a cursor2Manually: put the files in place
.cursor/skills/cnki-export/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install cookjohn/cnki-skills cnki-export2Manually: put the files in place
.github/skills/cnki-export/SKILL.md1Skills CLI (Vercel)
npx skills add cookjohn/cnki-skills --skill cnki-export -a gemini-cli2Platform CLI
gemini skills install https://github.com/cookjohn/cnki-skills --path skills/cnki-exportManually: put the files in place
.devin/skills/cnki-export/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add cookjohn/cnki-skills --skill cnki-export -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about cnki-export
How do I install cnki-export in Claude?
Run npx skills add cookjohn/cnki-skills --skill cnki-export -a claude-code. The skill lands at ~/.claude/skills/cnki-export/SKILL.md.
What does cnki-export do?
It reads citation data from a CNKI page and either pushes it to Zotero desktop, writes a .ris file, or prints a GB/T 7714 citation.
What does cnki-export need to run?
Zotero desktop must be running for the zotero mode, because the script calls localhost:23119. On Windows the export goes through a Python script to handle encoding.