citation-management
8 findings (5 critical, 2 medium, 1 low), mainly data exfiltration, social engineering, unauthorized tool use. Most recent scan 2026-10-21.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
Comprehensive citation management for academic research. Search OpenAlex, PubMed, and Google Scholar for papers, extract accurate metadata, validate citations, and generate properly formatted BibTeX entries. This skill should be used when you need to find papers, verify citation information, convert DOIs to BibTeX, or ensure reference accuracy in scientific writing.
- Package
- 22 files, 293 KB
- SKILL.md
- 1816 words, 12+ sections
- Code
- Python (8)
- Allowed tools
ReadWriteEditBashWebSearchWebFetch- License
- MIT License
- Compatibility
- Requires Python 3.9+ with requests. Google Scholar search additionally needs scholarly. Needs network access to api.openalex.org, api.crossref.org, eutils.ncbi.nlm.nih.gov, pmc.ncbi.nlm.nih.gov, doi.org, export.arxiv.org, and api.datacite.org.
SKILL.md covers: Citation Management · Overview · When to Use This Skill · Core Workflow · Phase 1: Paper Discovery and Search · OpenAlex: multidisciplinary REST API; optional OPENALEX_API_KEY for account quota · PubMed: the authority for biomedical and life sciences (35M+ citations) · Google Scholar: broadest reach, but scraped -- rate-limited and prone to blocking · Phase 2: Metadata Extraction · Phase 2.5: Metadata Enrichment via Web Search (MANDATORY) · Phase 3: BibTeX Formatting · Phase 4: Citation Validation
Findings
CRITICAL Cross-file env var exfiltration: 5 files Data Exfiltrationbehavioral
Environment variable access with network calls in scripts/extract_metadata.py, scripts/search_openalex.py, scripts/search_pubmed.py
CRITICAL Cross-file exfiltration chain: 5 files Data Exfiltrationbehavioral
Multi-file exfiltration chain detected: scripts/extract_metadata.py, scripts/search_openalex.py, scripts/search_pubmed.py collect data → encode → scripts/doi_to_bibtex.py, scripts/validate_citations.py, scripts/extract_metadata.py, scripts/search_openalex.py, scripts/search_pubmed.py transmit to network
CRITICAL Environment variable access with network calls detected Data Exfiltrationbehavioral
Script accesses environment variables and makes network calls in /home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/extract_metadata.py
/home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/extract_metadata.py
CRITICAL Environment variable access with network calls detected Data Exfiltrationbehavioral
Script accesses environment variables and makes network calls in /home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/search_openalex.py
/home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/search_openalex.py
CRITICAL Environment variable access with network calls detected Data Exfiltrationbehavioral
Script accesses environment variables and makes network calls in /home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/search_pubmed.py
/home/runner/work/skill-scanner-test/skill-scanner-test/skills/K-Dense-AI-scientific-agent-skills/skills/citation-management/scripts/search_pubmed.py
MEDIUM Potential description-behavior mismatch Social Engineeringstatic
Skill performs actions not reflected in its description
SKILL.md
MEDIUM Python code block executes shell commands Command Injectionbehavioral
Code block in references/core_workflow.md at line 193 contains potentially dangerous Python code.
references/core_workflow.md:193
> subprocess.run(LOW Code uses search/grep patterns but Grep tool not in allowed-tools Unauthorized Tool Usestatic
Skill restricts tools to ['Read', 'Write', 'Edit', 'Bash', 'WebSearch', 'WebFetch'] but code uses regex search patterns
SKILL.md
What is in the package
22 files, 293 KB. Show the list.
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 16 KB |
assets/bibtex_template.bib | other | 9.1 KB |
assets/citation_checklist.md | doc | 10 KB |
references/api_contracts.md | doc | 6.6 KB |
references/best_practices.md | doc | 2.7 KB |
references/bibtex_formatting.md | doc | 19 KB |
references/citation_validation.md | doc | 19 KB |
references/core_workflow.md | doc | 20 KB |
references/example_workflows.md | doc | 3.3 KB |
references/google_scholar_search.md | doc | 18 KB |
references/metadata_extraction.md | doc | 21 KB |
references/pubmed_search.md | doc | 19 KB |
references/script_reference.md | doc | 7.4 KB |
references/search_strategies.md | doc | 2.7 KB |
scripts/_common.py | script | 11 KB |
scripts/doi_to_bibtex.py | script | 6.6 KB |
scripts/extract_metadata.py | script | 29 KB |
scripts/format_bibtex.py | script | 11 KB |
scripts/search_google_scholar.py | script | 8.5 KB |
scripts/search_openalex.py | script | 12 KB |
scripts/search_pubmed.py | script | 15 KB |
scripts/validate_citations.py | script | 28 KB |
External hosts referenced
doi.org arxiv.org eutils.ncbi.nlm.nih.gov api.crossref.org api.datacite.org export.arxiv.org pmc.ncbi.nlm.nih.gov pubmed.ncbi.nlm.nih.gov www.nature.com www.ncbi.nlm.nih.gov help.openalex.org scholar.google.com alphafold.ebi.ac.uk dx.doi.org meshb.nlm.nih.gov support.datacite.org api.openalex.org community.crossref.org github.com info.arxiv.org ncbiinsights.ncbi.nlm.nih.gov pyzotero.readthedocs.io scholarly.readthedocs.io www.bibtex.org www.crossref.org docs.openalex.org openalex.org pandas.pydata.org proceedings.neurips.cc www.nlm.nih.gov
Hostnames that appear in the skill's files. Referencing a host is not a finding; compare against the findings above and the skill's stated purpose.
Environment variables referenced
NCBI_API_KEY OPENALEX_API_KEY NCBI_EMAIL OPENALEX_EMAIL FIRST_AUTHOR
Package contents recorded 2026-10-22 at commit 593377bb0487. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Correlation analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Sources
- Repository: https://github.com/K-Dense-AI/scientific-agent-skills
- Raw scan result: skills-citation-management-scan.json
- Badge for your README:
 - Request a re-scan