Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器github未标认证来源可访问许可证需确认审计提醒

sd-export标清导出

Agent Skill

用于辅助前端页面、组件、样式和交互逻辑的开发与维护。它适合让 Agent 生成或审查 React、Next.js、Vue、Tailwind、CSS 等相关代码,整理组件结构,或定位布局和性能问题。使用时需要结合项目现有设计系统、路由和构建方式,避免只生成孤立片段;涉及页面改动时,应配合本地预览和构建检查确认视觉效果。

总安装

1

周安装

8

GitHub Stars

26

下载量

65
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:sd-export(标清导出)
来源仓库:https://github.com/cookjohn/sd-skills
仓库路径:skills/sd-export
安装命令:
npx skills add https://github.com/cookjohn/sd-skills --skill sd-export
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/cookjohn/sd-skills --skill sd-export

简介

用于辅助前端页面和组件的开发与维护。sd-export 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

  • 适合生成或审查 React、Vue、Tailwind CSS 相关代码。
  • 使用时需结合项目现有设计系统和路由结构。
  • 避免只生成孤立片段,应与整体项目兼容。
  • 建议通过本地构建和预览验证实际效果。

SKILL.md

ScienceDirect Citation Export

Export article citations from ScienceDirect search results. Supports RIS, BibTeX, plain text, and Zotero push.

Export API

ScienceDirect uses a POST endpoint for citation export:

{BASE_URL}/search/api/export-citations

Parameters (form POST):

FieldDescription
piiArticle PII (e.g. S0957417426005245). Multiple PIIs for batch.
typeExport format: ris, bibtex, text
tSecurity token (must be extracted from the page)

Single Article Export

Step 1: Ensure on search results page

The export API requires a token that exists only on search results pages. If you have a PII but are not on a search results page, first search for the article or navigate back to results.

Note: When navigating to search results, always include initScript to prevent bot detection:

initScript: "Object.defineProperty(navigator, 'webdriver', {get: () => undefined})"

Step 2: Click the article's Export button and extract token

Use evaluate_script:

(pii) => {
  // Find the result item with this PII
  const checkbox = document.getElementById(pii);
  const resultItem = checkbox?.closest('li.ResultItem');
  if (!resultItem) return { error: 'Article with PII ' + pii + ' not found on this page.' };

  // Click the Export button for this result
  const exportBtn = resultItem.querySelector('button[aria-label="Export"]');
  if (exportBtn) exportBtn.click();

  // Wait briefly for the export panel to appear, then extract token
  return new Promise(resolve => {
    setTimeout(() => {
      const form = resultItem.querySelector('.ExportCitationOptions form');
      if (!form) { resolve({ error: 'Export panel did not open.' }); return; }

      const token = form.querySelector('input[name="t"]')?.value || '';
      const formAction = form.action;

      resolve({ token, formAction, pii });
    }, 500);
  });
}

Step 3: Submit export request

Use evaluate_script to submit the form with the desired format:

(token, pii, format) => {
  // format: 'ris', 'bibtex', or 'text'
  const typeMap = {
    'ris': 'ris',
    'bibtex': 'bibtex',
    'text': 'text',
  };

  const form = document.createElement('form');
  form.method = 'POST';
  form.action = window.location.origin + '/search/api/export-citations';
  form.target = '_blank';

  const fields = { type: typeMap[format] || 'ris', t: token, pii: pii };
  for (const [name, value] of Object.entries(fields)) {
    const input = document.createElement('input');
    input.type = 'hidden';
    input.name = name;
    input.value = value;
    form.appendChild(input);
  }

  document.body.appendChild(form);
  form.submit();
  document.body.removeChild(form);

  return { success: true, format: format, pii: pii };
}

Batch Export

Step 1: On search results page, click the top Export button

Use evaluate_script to select multiple articles and trigger batch export:

(piis) => {
  // Select all specified articles
  piis.forEach(pii => {
    const cb = document.getElementById(pii);
    if (cb && !cb.checked) cb.click();
  });

  // Click the batch export button
  const exportBtn = document.querySelector('.export-all-link-button');
  if (exportBtn) exportBtn.click();

  return { success: true, selected: piis.length };
}

Then wait for the export dropdown to appear and select the desired format.

Zotero Push

To push citations to a locally running Zotero instance. Two modes are supported:

Prerequisites: Zotero desktop must be running with the Connector API enabled (default on port 23119).

Mode 1: RIS import (simple, no PDF)

Use when you have RIS data from the export API or constructed from metadata.

python {SKILL_DIR}/scripts/push_to_zotero.py --ris-file "{RIS_FILE_PATH}"

Or push RIS content directly:

python {SKILL_DIR}/scripts/push_to_zotero.py --ris-data "{RIS_CONTENT}"

The script uses a deterministic session ID (MD5 hash of content) so:

  • First call → 201 (saved successfully)
  • Repeat call → 409 → treated as success ("already saved, no duplicates")

This avoids the SESSION_EXISTS error that occurs with random session IDs, since Zotero's session cleanup is buggy and sessions persist until restart.

Mode 2: JSON import (structured data with optional PDF attachment)

Use when you have structured paper data (e.g., from sd-paper-detail) and want to attach PDFs.

Save paper data as a JSON file, then run:

python {SKILL_DIR}/scripts/push_to_zotero.py --json "{JSON_FILE_PATH}"

JSON format (single paper or array):

{
  "title": "Paper Title",
  "authors": ["Author One", "Author Two"],
  "journal": "Journal Name",
  "date": "2026",
  "doi": "10.1016/...",
  "volume": "76",
  "issue": "3",
  "pages": "109460",
  "abstract": "...",
  "keywords": ["keyword1", "keyword2"],
  "url": "https://www.sciencedirect.com/science/article/pii/{PII}",
  "pdfUrl": "https://www.sciencedirect.com/..../pdfft?md5=...&pid=...",
  "cookies": "cf_clearance=...; JSESSIONID=..."
}

When pdfUrl and cookies are provided, the script will:

  1. Save metadata via /connector/saveItems
  2. Download PDF using the browser cookies
  3. Upload PDF as attachment via /connector/saveAttachment

Listing Zotero collections

python {SKILL_DIR}/scripts/push_to_zotero.py --list

Export Format Buttons on Page

Each result item has these export option buttons (inside .export-options):

Button textdata-aa-button attributeFormat
Save to RefWorkssrp-export-single-refworksRefWorks
Export citation to RISsrp-export-single-risRIS
Export citation to BibTeXsrp-export-single-bibtexBibTeX
Export citation to textsrp-export-single-textPlain text

Notes

  • Authentication required: Export buttons, result checkboxes, and the batch action toolbar are only visible to authenticated users. The user must be logged in (institutional or personal account) for export to work.
  • The security token t is session-specific and page-specific. It must be extracted from the export form on the page.
  • Batch export is much more efficient than exporting one-by-one.
  • For Zotero push, ensure Zotero desktop is running before invoking.
  • If the page shows captcha during export, auto-click the Cloudflare Turnstile checkbox: use take_snapshot to find checkbox "确认您是真人" inside the Turnstile iframe, then click(uid). Wait 3-5s and verify. If auto-click fails after 2 attempts, fall back to asking the user. After solving once, the session cookie persists.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37.24%
按下载量换算24

Claude

26.77%
按下载量换算17

Cursor

18.08%
按下载量换算12

Gemini CLI

10.1%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

可疑

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills