hugging-face-paper-publisher

SAFE max severity MEDIUMSkillSpector Caution 50 registry huggingface last scanned 1 scan

Verdict safe, but 54 findings (50 medium, 4 low), mainly transitive trust abuse, data exfiltration, policy violation. Most recent scan 2026-02-07.

The hugging-face-paper-publisher skill is SAFE for use. It is a legitimate research paper management tool that interacts with the Hugging Face Hub API for indexing papers, managing authorship, and linking papers to models/datasets. The skill requires a Hugging Face API token with write permissions, which is properly documented. No malicious code, data exfiltration, prompt injection, or security vulnerabilities were detected. The skill follows standard practices for API authentication using environment variables and includes appropriate error handling. The only findings are minor informational issues related to missing optional metadata fields and potential improvements to network request handling. All referenced files that were found are internal to the skill package and contain legitimate functionality.

Scanner's overall assessment (LLM analyzer)

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

Publish and manage research papers on Hugging Face Hub. Supports creating paper pages, linking papers to models/datasets, claiming authorship, and generating professional markdown-based research articles.

Package
8 files, 69 KB
SKILL.md
2071 words, 12+ sections
Code
Python (1)

SKILL.md covers: Overview · Integration with HF Ecosystem · Version · Dependencies · Core Capabilities · 1. Paper Page Management · 2. Link Papers to Artifacts · 3. Research Article Creation · 4. Metadata Management · Usage Instructions · Prerequisites · Method 1: Index Paper from arXiv

Findings

MEDIUM HTTP client library imports that enable external communication Data Exfiltrationstatic

Pattern detected: import requests

scripts/paper_manager.py:28

import requests
Remediation: Ensure network access is necessary and documented. Review all URLs
MEDIUM Reading environment variables that may contain secrets Data Exfiltrationstatic

Pattern detected: os.getenv("HF_TOKEN

scripts/paper_manager.py:44

self.token = hf_token or os.getenv("HF_TOKEN") or HfFolder.get_token()
Remediation: Minimize access to environment variables. Document why needed
MEDIUM Undeclared network usage Unauthorized Tool Usestatic

Skill code uses network libraries but doesn't declare network requirement

Remediation: Declare network usage in compatibility field or remove network calls
MEDIUM HTTP client library imports that enable external communication Data Exfiltrationstatic

Pattern detected: import requests

scripts/paper_manager.py:28

import requests
Remediation: Ensure network access is necessary and documented. Review all URLs
MEDIUM Reading environment variables that may contain secrets Data Exfiltrationstatic

Pattern detected: os.getenv("HF_TOKEN

scripts/paper_manager.py:44

self.token = hf_token or os.getenv("HF_TOKEN") or HfFolder.get_token()
Remediation: Minimize access to environment variables. Document why needed
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:69

uv run scripts/paper_manager.py index \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:75

uv run scripts/paper_manager.py check \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:88

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:96

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:104

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:112

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:134

uv run scripts/paper_manager.py claim \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:147

uv run scripts/paper_manager.py check-authorship \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:157

uv run scripts/paper_manager.py list-my-papers
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:162

uv run scripts/paper_manager.py toggle-visibility \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:176

uv run scripts/paper_manager.py create \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:190

uv run scripts/paper_manager.py create \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:200

uv run scripts/paper_manager.py convert \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:259

uv run scripts/paper_manager.py index --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:264

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:274

uv run scripts/paper_manager.py claim \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:281

uv run scripts/paper_manager.py toggle-visibility \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:288

uv run scripts/paper_manager.py create \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:298

uv run scripts/paper_manager.py convert \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:306

uv run scripts/paper_manager.py check --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:311

uv run scripts/paper_manager.py list-my-papers
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:316

uv run scripts/paper_manager.py search --query "transformer attention"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:379

uv run scripts/paper_manager.py create \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:390

uv run scripts/paper_manager.py index --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:393

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:399

uv run scripts/paper_manager.py claim \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:407

uv run scripts/paper_manager.py check --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:410

uv run scripts/paper_manager.py index --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:413

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:418

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:423

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:435

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:481

uv run scripts/paper_manager.py link \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:491

uv run scripts/paper_manager.py info \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:499

uv run scripts/paper_manager.py citation \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:507

uv run scripts/paper_manager.py validate \
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:562

uv run scripts/paper_manager.py create --template modern --output paper.md
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:564

uv run scripts/paper_manager.py index --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:565

uv run scripts/paper_manager.py link --repo-id "user/model" --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:571

uv run scripts/paper_manager.py search --query "transformers"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:572

uv run scripts/paper_manager.py check --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:573

uv run scripts/paper_manager.py link --repo-id "user/model" --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:579

uv run scripts/paper_manager.py claim --arxiv-id "2301.12345"
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:580

uv run scripts/paper_manager.py list-my-papers
Remediation: Review and remove transitive trust abuse pattern
MEDIUM TRANSITIVE TRUST ABUSE detected by YARA Transitive Trust Abusestatic

Detects skills that delegate trust to untrusted external content: run scripts

SKILL.md:581

uv run scripts/paper_manager.py toggle-visibility --arxiv-id "2301.12345" --show true
Remediation: Review and remove transitive trust abuse pattern
LOW Skill does not specify a license Policy Violationstatic

Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.

SKILL.md

Remediation: Add 'license' field to SKILL.md frontmatter (e.g., MIT, Apache-2.0)
LOW Missing Optional Metadata Fields Data Exfiltrationllm

The skill's YAML manifest is missing optional fields: license, compatibility, and allowed-tools. While these fields are optional per the agent skills specification, their absence reduces transparency about the skill's requirements and restrictions. The allowed-tools field would help users understand which agent capabilities (Read, Write, Bash, Python, etc.) the skill requires.

SKILL.md

YAML Manifest shows:
- license: Not specified
- compatibility: Not specified
- allowed-tools: Not specified
Remediation: Add optional metadata fields to improve transparency: ```yaml license: MIT compatibility: Requires network access, HF API token allowed-tools: [Read, Write, Python, Bash] ```
LOW Environment Variable Token Usage Data Exfiltrationllm

The skill reads the HF_TOKEN from environment variables, which is a standard and acceptable practice for API authentication. However, users should be aware that the skill requires access to their Hugging Face authentication token with write permissions. This is properly documented in the prerequisites section.

scripts/paper_manager.py

```python
self.token = hf_token or os.getenv("HF_TOKEN") or HfFolder.get_token()
if not self.token:
    print("Warning: No HF_TOKEN found. Some operations will fail.")
```
Remediation: Current implementation is acceptable. The skill properly documents the token requirement in prerequisites and handles missing tokens gracefully with warnings. No changes needed.
LOW Network Request Timeout Configuration Resource Abusellm

The script makes HTTP requests with a 10-second timeout, which is reasonable. However, some operations like paper indexing may involve multiple API calls without explicit rate limiting or retry logic with backoff, which could potentially cause issues under heavy use.

scripts/paper_manager.py:60

```python
response = requests.get(paper_url, timeout=10)
```
Remediation: Consider adding retry logic with exponential backoff for API calls: ```python from requests.adapters import HTTPAdapter from requests.packages.urllib3.util.retry import Retry retry_strategy = Retry(total=3, backoff_factor=1) adapter = HTTPAdapter(max_retries=retry_strategy) ```

What is in the package

FileKindSize
SKILL.mddoc16 KB
examples/example_usage.mddoc8.3 KB
references/quick_reference.mddoc4.4 KB
scripts/paper_manager.pyscript17 KB
templates/arxiv.mddoc7.1 KB
templates/ml-report.mddoc6.7 KB
templates/modern.mddoc6.3 KB
templates/standard.mddoc3.1 KB

External hosts referenced

huggingface.co arxiv.org export.arxiv.org

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

HF_TOKEN MODELS

Package contents recorded 2026-10-22 at commit 2afeee6dc727. 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

What we did not check

Sources