# jscpd

By **kucherenko** · Software & Tools

Um detector de cópias e colagens para código-fonte com suporte a mais de 200 formatos, motor baseado em Rust até 24-37x mais rápido, treze reporters, integrações com CI e pre-commit hooks, e saída pronta para IA incluindo uma skill de agente e servidor MCP.

- Source: https://jscpd.dev/
- Repository: https://github.com/kucherenko/jscpd
- Install: `npx jscpd`
- Tags: cli, open-source, rust, code-quality, linting, ci-cd, ai-ready, duplicate-detection
- Pricing: free
- Upvotes: 1

## Features

- Detecta código duplicado em mais de 220 formatos via Rabin-Karp
- Motor Rust rápido (v5) até 24-37x mais rápido, além de um motor TypeScript
- 13 reporters incluindo HTML, SARIF, badge e um reporter de IA com uso eficiente de tokens
- Git blame com comparação lado a lado de autores
- Skills de agente instaláveis mais um servidor REST e MCP
- Integrações com CI e pre-commit hooks
- Usado pelo GitHub Super Linter, Codacy e MegaLinter

---

jscpd é um detector de cópias e colagens para código-fonte que encontra blocos duplicados em arquivos usando o algoritmo Rabin-Karp, com suporte a mais de 220 formatos de linguagem e detecção entre formatos (Vue SFC, Svelte, Astro, Markdown). Ele vem com dois motores: o motor TypeScript original (v4, Node.js) e uma reescrita completa em Rust (v5), que é um substituto direto rodando de 24 a 37x mais rápido como um binário autocontido sem necessidade de Node.js. A instalação pode ser feita via npm, Cargo, Nix, Homebrew ou um script de uma linha.

Ele oferece 13 reporters: console, JSON, XML, CSV, HTML, Markdown, um badge SVG, SARIF para o GitHub Code Scanning, e um reporter de IA que emite saída com uso eficiente de tokens (~79% menos tokens) para pipelines com LLMs, além de Git blame com comparação lado a lado de autores, paralelismo configurável e integrações com CI e pre-commit. No lado de IA, disponibiliza duas skills de agente instaláveis (uma referência de ferramenta e um fluxo de trabalho guiado de refatoração DRY) e um servidor REST/MCP, permitindo que um agente encontre e corrija duplicações por você. jscpd é amplamente integrado, alimentando a detecção de duplicação no GitHub Super Linter, Codacy e MegaLinter. Licença MIT.

## FAQ

### O que o jscpd faz?

Ele detecta blocos de código copiados e duplicados em arquivos com mais de 220 formatos de linguagem usando o algoritmo Rabin-Karp, ajudando a manter o código DRY.

### Qual é a diferença entre os motores?

A v4 é o motor TypeScript/Node.js; a v5 é uma reescrita em Rust que é um substituto direto rodando de 24 a 37 vezes mais rápido como um binário autocontido sem necessidade de Node.js.

### Agentes de IA podem usá-lo?

Sim. Ele oferece um reporter de IA com uso eficiente de tokens, duas skills de agente instaláveis (referência de ferramenta e refatoração DRY) e um servidor REST/MCP, permitindo que um agente encontre e corrija duplicações.

---
[View on Analog](https://analoghq.ai/pt-br/kucherenko/software-tools/jscpd)