Agent skill

Detecting Typosquatting Packages In npm Pypi

by mukul975 in mukul975/Anthropic-Cybersecurity-Skills

Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to…

Apache-2.0Auto-check passedSecurity

Install Detecting Typosquatting Packages In npm Pypi

skills CLI
$ npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-typosquatting-packages-in-npm-pypi -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mukul975/Anthropic-Cybersecurity-Skills detecting-typosquatting-packages-in-npm-pypi --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mukul975/Anthropic-Cybersecurity-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/detecting-typosquatting-packages-in-npm-pypi .claude/skills/detecting-typosquatting-packages-in-npm-pypi && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
detecting-typosquatting-packages-in-npm-pypi
GitHub stars
34k
Token cost
~3.3k tokens
SKILL.md length
1,395 words
Files
4 (incl. scripts, references)
Skills in repo
644
Repo updated
First seen
Licence
Apache-2.0

At a glance

Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to…

  • Works in 5 steps: Build the Target Package Watchlist → Generate Candidate Typosquat Names → Query Registry APIs for Candidate Packages → …
  • Tasks that involve Supply chain security
  • SKILL.md covers When to Use, Prerequisites, Workflow and Key Concepts, plus 3 more sections
  • Runs Python scripts from its folder; reaches pypi.org and registry.npmjs.org

What it does

Detecting Typosquatting Packages In npm Pypi is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to identify recently created packages mimicking established ones, and flagging download count anomalies where suspicious packages have disproportionately low usage compared to their legitimate targets. The analyst queries the PyPI JSON API and npm registry API to gather package metadata for automated comparison. Activates for…

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including scripts and reference files (for example `references/api-reference.md` and `scripts/agent.py`).

It sits in Security, covering Supply chain security. It works with npm. The repository describes itself as: 817 structured cybersecurity skills for AI agents · Mapped to 6 frameworks: MITRE ATT&CK, NIST CSF 2.0, MITRE ATLAS, D3FEND, NIST AI RMF & MITRE F3 (Fight Fraud) · agentskills.io…. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Supply chain security

Example prompts

  • “Use the detecting-typosquatting-packages-in-npm-pypi skill to detect typosquatting attacks in npm and PyPI package registries by analyzing package…”
  • “/detecting-typosquatting-packages-in-npm-pypi”

Requirements

  • Python 3

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Build the Target Package Watchlist
  2. Generate Candidate Typosquat Names
  3. Query Registry APIs for Candidate Packages
  4. Analyze Package Metadata for Suspicion Signals
  5. Score, Rank, and Report Findings

What it can do on your machine

Read from SKILL.md and the folder at commit 54a7988. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • pypi.org
    • registry.npmjs.org
    • api.npmjs.org
    • hugovk.github.io

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Detecting Typosquatting Packages In npm Pypi loads about 3.3k tokens when it runs, and up to ~4.7k if it reads all its reference files. Until then it costs about 185 tokens; SKILL.md has 1,395 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~185
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~4.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from mukul975/Anthropic-Cybersecurity-Skills at commit 54a7988, republished under its Apache-2.0 licence (© mukul975). 1,395 words, ~3,327 tokens.

Download SKILL.mdSave it as .claude/skills/detecting-typosquatting-packages-in-npm-pypi/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
detecting-typosquatting-packages-in-npm-pypi
description
Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to identify recently created packages mimicking established ones, and flagging download count anomalies where suspicious packages have disproportionately low usage compared to their legitimate targets. The analyst queries the PyPI JSON API and npm registry API to gather package metadata for automated comparison. Activates for requests involving package typosquatting detection, dependency confusion analysis, malicious package identification, or software supply chain threat hunting in package registries.
domain
cybersecurity
subdomain
supply-chain-security
tags
typosquatting, npm, pypi, supply-chain, package-security, Levenshtein, dependency-confusion, malicious-packages
version
1.0.0
author
mukul975
license
Apache-2.0
nist_csf
GV.SC-01, GV.SC-03, GV.SC-06, GV.SC-07
mitre_attack
T1195.001, T1195.002, T1608.001, T1554

Detecting Typosquatting Packages in npm and PyPI

When to Use

  • Auditing project dependencies to identify packages whose names are suspiciously similar to popular libraries
  • Proactively scanning package registries for newly published packages that may be typosquats of your organization's packages
  • Investigating a suspected supply chain compromise where a developer installed a misspelled package name
  • Building automated monitoring that alerts when new packages appear with names close to critical dependencies
  • Assessing the risk profile of unfamiliar packages before adding them to a project's dependency tree

Do not use as the sole determination of malicious intent; name similarity alone does not prove a package is malicious. Do not use for bulk automated takedown requests without manual review of flagged packages. Do not use against private registries without authorization.

Prerequisites

  • Python 3.9+ with requests and python-Levenshtein (or rapidfuzz) packages installed
  • Network access to https://pypi.org/pypi/<package>/json (PyPI JSON API) and https://registry.npmjs.org/<package> (npm registry API)
  • A list of popular or critical packages to monitor (e.g., top 1000 PyPI packages, organization's dependency list)
  • Understanding of common typosquatting patterns: character omission, transposition, insertion, substitution, and hyphen/underscore manipulation

Workflow

Step 1: Build the Target Package Watchlist

Establish the set of legitimate packages to monitor for typosquats:

  • Extract project dependencies: Parse requirements.txt, Pipfile.lock, package.json, or package-lock.json to extract all direct and transitive dependency names
  • Include popular packages: Supplement with high-value targets from the top 1000 PyPI downloads (available from https://hugovk.github.io/top-pypi-packages/) or top npm packages by download count
  • Add organization packages: Include any packages published by your organization that attackers might target with typosquats to intercept internal installations
  • Normalize names: PyPI treats hyphens, underscores, and periods as equivalent (PEP 503 normalization: re.sub(r"[-_.]+", "-", name).lower()). npm package names are case-sensitive but scoped packages use @scope/name format. Normalize before comparison.
Step 2: Generate Candidate Typosquat Names

Produce potential typosquat variants for each target package:

  • Character omission: Remove each character one at a time (requests -> rquests, requets, reqests)
  • Character transposition: Swap adjacent characters (requests -> erquests, rqeuests, reques ts)
  • Character substitution: Replace characters with keyboard-adjacent keys using a QWERTY distance map (requests -> rrquests, requesta)
  • Character insertion: Insert common characters at each position (requests -> rrequests, reqquests)
  • Separator manipulation: For hyphenated names, try removing, doubling, or replacing separators (my-package -> mypackage, my--package, my_package)
  • Common prefix/suffix attacks: Prepend or append common strings (python-requests, requests-python, requests2, requests-lib)
Step 3: Query Registry APIs for Candidate Packages

Check whether generated candidate names actually exist in the registry:

  • PyPI JSON API: Send GET https://pypi.org/pypi/<candidate>/json for each candidate. A 200 response means the package exists; 404 means it does not. Extract from the response: info.name, info.version, info.author, info.summary, info.home_page, info.project_urls, and releases (keyed by version with upload_time_iso_8601 timestamps).
  • npm registry API: Send GET https://registry.npmjs.org/<candidate> with Accept: application/json. Extract: name, description, dist-tags.latest, time.created, time.modified, maintainers, and versions.
  • Rate limiting: PyPI has no published rate limits but respect reasonable request rates (1-2 requests/second). npm registry returns 429 when rate limited; implement exponential backoff.
  • Batch optimization: For large candidate lists, parallelize requests with connection pooling (requests.Session) and limit concurrency to avoid triggering abuse protections.
Step 4: Analyze Package Metadata for Suspicion Signals

Score each existing candidate package against multiple heuristic signals:

  • Levenshtein distance: Calculate the edit distance between the candidate name and the target. Packages with distance 1-2 from a popular package are high-priority suspects. Historical analysis shows 18 of 40 known typosquats had Levenshtein distance of 2 or less from their targets.
  • Publish date recency: Compare the candidate's first publish date against the target's. A package created years after its near-namesake is more suspicious. Flag packages created within the last 90 days that are similar to packages published years ago.
  • Download count disparity: Compare weekly downloads. Legitimate similarly-named packages typically have comparable or explainable download counts. A package with 50 downloads versus its near-namesake with 5 million downloads is suspicious. PyPI download stats are available via BigQuery (pypistats.org/api/); npm provides download counts at https://api.npmjs.org/downloads/point/last-week/<package>.
  • Author and maintainer analysis: Check if the candidate package author matches the legitimate package author. Different authors for near-identical names increase suspicion.
  • Description similarity: Compare package descriptions. Typosquats frequently copy or closely paraphrase the target package description to appear legitimate.
  • Version count: Legitimate packages typically have many versions over time. A package with only 1-2 versions and a name similar to a popular package is suspicious.
  • Repository URL analysis: Check if the candidate links to the same repository as the target (likely legitimate fork/mirror) or has no repository URL (suspicious).
Step 5: Score, Rank, and Report Findings

Combine signals into a composite risk score and generate an actionable report:

  • Weighted scoring: Assign weights to each signal. Example: Levenshtein distance 1 = 40 points, Levenshtein distance 2 = 25 points, created < 90 days ago = 15 points, download ratio < 0.001 = 15 points, different author = 10 points, single version = 5 points. Total score out of 100.
  • Threshold classification: Score >= 70: HIGH risk (likely typosquat), 40-69: MEDIUM risk (requires manual review), < 40: LOW risk (likely legitimate)
  • Generate report: For each flagged package, include the target it mimics, all signal values, the composite score, direct links to both packages on the registry, and a recommendation (block, investigate, or allow)
  • Actionable output: Produce a blocklist of flagged package names that can be imported into package manager deny-lists, CI/CD policy engines, or artifact repository proxy rules
Show full SKILL.md (531 more words)Show less

Key Concepts

TermDefinition
TyposquattingRegistering a package name that closely resembles a popular package, exploiting common typos to trick developers into installing malicious code
Levenshtein DistanceThe minimum number of single-character edits (insertions, deletions, substitutions) required to transform one string into another; the primary metric for measuring name similarity
Dependency ConfusionA broader supply chain attack where attackers publish malicious packages to public registries with names matching private internal packages, exploiting package manager resolution order
PEP 503 NormalizationThe Python packaging specification that treats hyphens, underscores, and periods as equivalent in package names, meaning my-package, my_package, and my.package resolve to the same package
QWERTY DistanceA keyboard-layout-aware distance metric measuring how far apart two keys are on a standard keyboard, used to detect substitutions from adjacent key mistyping
CombosquattingA variant of typosquatting where attackers prepend or append common words to a package name (e.g., requests-security, python-requests)
StarJackingAn attack where a typosquat package links its repository URL to the legitimate package's GitHub repository to inflate apparent credibility

Tools & Systems

  • PyPI JSON API: REST API at https://pypi.org/pypi/<package>/json returning package metadata including name, author, versions, upload timestamps, and project URLs
  • npm Registry API: REST API at https://registry.npmjs.org/<package> returning package metadata including maintainers, version history, creation timestamps, and distribution info
  • python-Levenshtein / rapidfuzz: Python libraries for fast string distance computation, supporting Levenshtein, Damerau-Levenshtein, Jaro-Winkler, and other similarity metrics
  • pypistats.org API: Provides download statistics for PyPI packages, enabling download count comparison between suspected typosquats and their targets
  • npm download counts API: Endpoint at https://api.npmjs.org/downloads/point/<period>/<package> providing download statistics for npm packages

Common Scenarios

Scenario: Auditing a Python Project for Typosquatted Dependencies

Context: A security team discovers that a developer's workstation was compromised after installing a Python package. The incident response team needs to audit all project dependencies for potential typosquats and establish ongoing monitoring.

Approach:

  1. Parse requirements.txt and Pipfile.lock to extract all 87 direct and transitive dependencies
  2. Generate typosquat candidates for each dependency using character omission, transposition, substitution, and separator manipulation, producing approximately 2,400 candidate names
  3. Query the PyPI JSON API for each candidate, finding 34 that actually exist as published packages
  4. Score each existing candidate: 3 packages score above 70 (HIGH risk) with Levenshtein distance 1, created within the last 60 days, single version, and fewer than 100 downloads
  5. Manual review confirms 2 of the 3 are malicious typosquats containing obfuscated code that exfiltrates environment variables during installation
  6. Block the malicious packages in the organization's artifact proxy, report to PyPI for takedown via security@pypi.org, and add all 87 dependencies to the ongoing monitoring watchlist
  7. Implement the detection agent as a scheduled CI job that runs weekly and alerts on new HIGH-risk findings

Pitfalls:

  • Not normalizing PyPI package names per PEP 503 before comparison, causing missed matches between hyphenated and underscored variants
  • Setting the Levenshtein distance threshold too low (only 1) and missing typosquats at distance 2 that use double substitutions
  • Relying solely on name similarity without checking metadata signals, leading to high false positive rates on legitimately similar package names
  • Not accounting for npm scoped packages (@scope/name) which have different naming rules than unscoped packages
  • Querying the registries too aggressively and getting rate-limited or IP-blocked

Output Format

## Typosquatting Detection Report

**Scan Date**: 2026-03-19
**Registry**: PyPI
**Packages Monitored**: 87
**Candidates Generated**: 2,412
**Candidates Found in Registry**: 34
**Flagged as Suspicious**: 5

### HIGH Risk (Score >= 70)

| Suspect Package | Target Package | Levenshtein | Created | Downloads | Score |
|----------------|---------------|-------------|---------|-----------|-------|
| reqeusts       | requests      | 1           | 2026-02-28 | 43     | 92    |
| requsets       | requests      | 1           | 2026-03-01 | 12     | 88    |
| numpyy         | numpy         | 1           | 2026-01-15 | 67     | 78    |

### Recommendation
- BLOCK: reqeusts, requsets, numpyy (add to artifact proxy deny-list)
- REPORT: Submit malware reports to security@pypi.org with package names and evidence
- MONITOR: Continue weekly scans for the full dependency watchlist

© mukul975, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (scripts, references) in skills/detecting-typosquatting-packages-in-npm-pypi of mukul975/Anthropic-Cybersecurity-Skills.

  • SKILL.md
  • LICENSE
  • references/api-reference.md
  • scripts/agent.py

Open the folder on GitHubat commit 54a7988

Compare with similar skills

Detecting Typosquatting Packages In npm Pypi next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Detecting Typosquatting Packages In npm Pypi compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Detecting Typosquatting Packages In npm Pypi this skillmukul975/Anthropic-Cybersecurity-Skills34k—~3.3kAutomated safety check: PassApache-2.0
Bom Auditcdxgen/cdxgen1.1k—~2.4kAutomated safety check: PassApache-2.0
Vex Authoringrelizaio/rearm127—~2.9kAutomated safety check: PassAGPL-3.0
Dependency Update Auditbacknotprop/plannotator9.3k—~1.8kAutomated safety check: PassApache-2.0
Supply Chain Risk Auditortrailofbits/skills7.5k—~1.7kAutomated safety check: NotesCC-BY-SA-4.0
Corpus Sweepnubjs/nub4.4k—~2.4kAutomated safety check: PassMIT

Similar skills

  • Bom Audit

    cdxgen/cdxgen

    Runs supply-chain risk analysis on CycloneDX BOMs with cdx-audit predictive auditing and cdxgen --bom-audit embedded rules, covering npm and PyPI package compromise posture, CI permission risk…

    1.1k GitHub stars~2.4k tokensUpdated today
    SecurityAuto-check passed
  • Vex Authoring

    relizaio/rearm

    Author CycloneDX-VEX or OpenVEX documents that import cleanly into ReARM.

    127 GitHub stars~2.9k tokensUpdated yesterday
    SecurityAuto-check passed
  • Dependency Update Audit

    backnotprop/plannotator

    Audits outdated npm and Bun packages for supply chain integrity before bumping them, deferring risky ones and logging every decision.

    9.3k GitHub stars~1.8k tokensUpdated today
    SecurityAuto-check passed
  • Supply Chain Risk Auditor

    trailofbits/skills

    Official

    Audits a project's dependencies for supply-chain risk: version-matched advisories for direct dependencies and the full lockfile tree, abandoned or archived upstreams, npm publisher concentration…

    7.5k GitHub stars~1.7k tokensUpdated yesterday
    SecurityAuto-check: notes
  • Corpus Sweep

    nubjs/nub

    Run a large sharded measurement sweep over npm packages (the build-jail catalog probe, or any harness that installs thousands of package-versions and records a verdict per run).

    4.4k GitHub stars~2.4k tokensUpdated yesterday
    SecurityAuto-check passed
  • Dependency Audit

    briiirussell/cybersecurity-skills

    Audit project dependencies, frameworks, languages, and dev tools for known vulnerabilities, CVEs, and security anti-patterns.

    413 GitHub stars~3.2k tokensUpdated 4 mo ago
    SecurityAuto-check: warnings

More from mukul975/Anthropic-Cybersecurity-Skills

All 644 skills in this repo
  • Campaign Attribution Evidence Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Weighs infrastructure, TTP, malware code and timing evidence with the Diamond Model and competing hypotheses to reach a confidence-rated attribution.

    34k GitHub stars~2.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Go Malware Analysis in Ghidra

    mukul975/Anthropic-Cybersecurity-Skills

    Walks through reverse engineering Go-compiled malware in Ghidra: parsing buildinfo and pclntab, recovering stripped function names and extracting dependencies.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • LNK and Jump List Forensics

    mukul975/Anthropic-Cybersecurity-Skills

    Guides forensic analysis of Windows LNK shortcut files and Jump Lists with LECmd, JLECmd and manual parsing to show file access and program execution.

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Malware Persistence Analysis with Autoruns

    mukul975/Anthropic-Cybersecurity-Skills

    Hunts Windows malware persistence with Sysinternals Autoruns, covering run keys, services, scheduled tasks and drivers, with baseline comparison.

    34k GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • NTFS MFT Deleted File Recovery

    mukul975/Anthropic-Cybersecurity-Skills

    Guides a Windows forensic examination of the NTFS Master File Table to recover deleted-file evidence, build timelines and spot timestomping.

    34k GitHub stars~2.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Network Covert Channel Analysis

    mukul975/Anthropic-Cybersecurity-Skills

    Detects DNS tunneling, ICMP exfiltration and HTTP-based covert channels in packet captures and DNS logs when hunting for hidden command-and-control traffic.

    34k GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed

Works with

Categories

Questions about Detecting Typosquatting Packages In npm Pypi

What does Detecting Typosquatting Packages In npm Pypi do?

Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to…. Detecting Typosquatting Packages In npm Pypi is an agent skill from mukul975/Anthropic-Cybersecurity-Skills. Detects typosquatting attacks in npm and PyPI package registries by analyzing package name similarity using Levenshtein distance and other string metrics, examining publish date heuristics to identify recently created packages mimicking established ones, and flagging download count anomalies where suspicious packages have disproportionately low usage compared to their legitimate targets.

When should I use Detecting Typosquatting Packages In npm Pypi?

Detecting Typosquatting Packages In npm Pypi fits situations like: tasks that involve Supply chain security.

How do I install Detecting Typosquatting Packages In npm Pypi in Claude Code?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-typosquatting-packages-in-npm-pypi -a claude-code`. Or copy the skill folder (skills/detecting-typosquatting-packages-in-npm-pypi in mukul975/Anthropic-Cybersecurity-Skills) into .claude/skills/detecting-typosquatting-packages-in-npm-pypi in your project. Claude Code loads it when a task matches its description.

How do I install Detecting Typosquatting Packages In npm Pypi in Codex?

Run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-typosquatting-packages-in-npm-pypi -a codex`. Or copy the skill folder (skills/detecting-typosquatting-packages-in-npm-pypi in mukul975/Anthropic-Cybersecurity-Skills) into .agents/skills/detecting-typosquatting-packages-in-npm-pypi in your project. Codex loads it when a task matches its description.

Can I use Detecting Typosquatting Packages In npm Pypi in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill detecting-typosquatting-packages-in-npm-pypi -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/detecting-typosquatting-packages-in-npm-pypi, .gemini/skills/detecting-typosquatting-packages-in-npm-pypi, .github/skills/detecting-typosquatting-packages-in-npm-pypi and .opencode/skills/detecting-typosquatting-packages-in-npm-pypi in your project.

What does Detecting Typosquatting Packages In npm Pypi need to run?

Going by SKILL.md and its folder, Detecting Typosquatting Packages In npm Pypi needs Python for the scripts in its folder. Our summary lists: Python 3.

Does Detecting Typosquatting Packages In npm Pypi access the network?

SKILL.md names 4 domains. In commands or code: pypi.org, registry.npmjs.org, api.npmjs.org and hugovk.github.io; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Detecting Typosquatting Packages In npm Pypi safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Detecting Typosquatting Packages In npm Pypi use?

Detecting Typosquatting Packages In npm Pypi is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Detecting Typosquatting Packages In npm Pypi use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.4k tokens, read only when the agent opens those files.

What are the alternatives to Detecting Typosquatting Packages In npm Pypi?

Skills that share tags, products or a category with Detecting Typosquatting Packages In npm Pypi: Bom Audit (cdxgen/cdxgen, 1.1k stars), Vex Authoring (relizaio/rearm, 127 stars), Dependency Update Audit (backnotprop/plannotator, 9.3k stars) and Supply Chain Risk Auditor (trailofbits/skills, 7.5k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Detecting Typosquatting Packages In npm Pypi?

mukul975 (a GitHub user) maintains it in mukul975/Anthropic-Cybersecurity-Skills, which has 34,116 GitHub stars. The repository holds 644 skills in this directory. The repository was last updated on August 31, 2026.

Source: mukul975/Anthropic-Cybersecurity-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.