B — Some risk signals Graded October 16, 2026Minor concerns worth a quick check.Based on public adoption and transparency signals as of October 16, 2026. Our opinion, not a code audit or security guarantee.
AI agent skill · Developer tools, Cloud & infrastructure
jscpd
Copy/paste detector for source code. 220+ languages, Rust engine, SARIF/HTML/badge reporters, GitHub Action, MCP server for AI agents.
Bottom line: Signal-based grade (4/7 points): very widely starred on GitHub, public source code. This reflects adoption and transparency, not a code audit.
- Popularity score
- 43/100
- Rank
- Not ranked: outside the 500 most popular tools
- GitHub stars
- 6.4k
What it does
jscpd detects copy-pasted and duplicated code across 220+ programming languages using a high-performance Rust engine. It generates reports in multiple formats (SARIF, HTML, badges) and integrates with GitHub Actions and as an MCP server for AI agents to identify code quality issues.
Who it’s for
Development teams and AI agents seeking to enforce DRY (Don't Repeat Yourself) principles and maintain code quality during reviews. Builders integrating code analysis into AI workflows will find the MCP server interface particularly useful.
Copy-paste setup
Check these steps against the project’s own instructions before running anything.
Follow the setup steps in the project’s official README: https://github.com/kucherenko/jscpd (opens external site)
Risks
- Source code exposure: Analyzed code or reports may be sent to external services depending on configuration; verify local-only processing if handling proprietary code.
- False positives at scale: Large codebases may generate noisy results, requiring tuning to avoid alert fatigue and masking real issues.
- Supply chain via npm: Dependency chain (Rust compiler, transitive deps) could introduce vulnerabilities; monitor GitHub advisories.
- MCP server trust: AI agents receive duplicate detection results; malformed output could confuse LLM decision-making if not validated.
- Configuration injection: User-supplied patterns or thresholds in CI/CD could be exploited if not properly sanitized.
How to stay secure
How to Stay Secure with jscpd
Least-privilege permissions
- Restrict code access: Only grant jscpd permission to read the specific source code repositories it needs to scan—don't let it access your entire codebase or sensitive systems.
- Limit report storage: Keep generated reports (which contain code snippets) in restricted folders; don't allow the tool or AI agents to write reports to shared drives or public locations.
- Control CI/CD integration: If using jscpd in automated pipelines, use role-specific service accounts with minimal permissions rather than admin credentials.
- Separate AI agent access: When AI agents consume jscpd results, give them read-only access and prevent them from modifying scanning rules or thresholds.
Network isolation
- Run locally when possible: Keep jscpd scanning on your internal machines or secure CI/CD runners; avoid sending your code to external scanning services unless absolutely necessary.
- Verify no cloud telemetry: Check your jscpd configuration to confirm results and code samples aren't automatically uploaded to third-party services for analysis.
- Firewall npm dependencies: Monitor and audit all software packages jscpd depends on; use a private npm mirror or lock dependency versions to prevent supply-chain attacks through compromised libraries.
- Isolate AI agent communication: If an AI agent uses jscpd results, ensure it operates on a separate network segment from production systems and can't exfiltrate reports.
Monitoring
- Log all scans: Record when jscpd runs, who triggered it, and what code was analyzed; review logs regularly for unauthorized or unusual activity.
- Alert on threshold changes: Set up notifications if someone modifies jscpd's detection rules or sensitivity settings, as this could hide duplicate code intentionally.
- Track report access: Monitor who views or downloads jscpd reports—they contain source code snippets that may be sensitive.
- Watch dependency updates: Regularly check GitHub Security Advisories for vulnerabilities in jscpd and its underlying libraries; plan patching cycles.
Red flags to watch for
- Unexpected external connections: If jscpd or related tools attempt to contact unknown servers or IP addresses, this may indicate malicious activity or misconfiguration.
- Large or unusual reports: Extremely large result files or reports showing patterns that don't match your codebase could indicate tampering or a configuration error.
- Mismatched alert volumes: A sudden drop in duplicate-code alerts after configuration changes might mean rules were weakened to hide problems.
- Unauthorized rule modifications: If AI agents or users can alter detection patterns without approval, malicious actors could disable safeguards.
Alternatives
- SonarQube – enterprise code quality platform with built-in duplication detection, broader static analysis, and commercial support.
- Semgrep – lightweight rule-based SAST tool focusing on security and code patterns; good for AI integration via APIs.
- Checker for Visual Studio Code – lightweight duplicate detection IDE extension; simpler but less comprehensive than jscpd.
- PMD/CPD – mature open-source duplication detector for Java and other languages; narrower language support than jscpd.