
Um ambiente de trabalho desktop para escrever, validar, compilar e testar regras YARA.

Uma bancada de trabalho desktop para escrever, validar, compilar e testar regras YARA.
Quipu (pronuncia-se “KEE-poo”) reúne um explorador de projetos, um editor com reconhecimento de YARA, o compilador YARA-X e resultados de varredura focados em uma única aplicação local. Ele incorpora tanto o YARA-X quanto seu servidor de linguagem, então você não precisa de uma instalação separada do YARA.
[!IMPORTANT] Quipu está em estágio MVP. A plataforma inicialmente suportada é Linux de 64 bits; o suporte a Windows e macOS virá em seguida.

.yar e .yara como um workspace, ou comece com
uma regra avulsa.Regras e alvos de varredura são processados localmente. Quipu não envia seus conteúdos para um serviço remoto.
Pacotes Linux x86-64 são publicados na página de GitHub Releases:
| Pacote | Melhor para | Instalar ou executar |
|---|---|---|
| AppImage | Uso portátil em distribuições suportadas | chmod +x Quipu_*.AppImage && ./Quipu_*.AppImage |
.deb | Ubuntu 22.04+ e Debian 12+ | sudo apt install ./Quipu_*.deb |
.rpm | Versões recentes do Fedora | sudo dnf install ./Quipu-*.rpm |
Os pacotes .deb e .rpm usam o runtime WebKitGTK do sistema. Se sua
distribuição não conseguir satisfazer essa dependência, use o AppImage.
Os pacotes do Quipu não são assinados atualmente. Cada versão inclui um
arquivo SHA256SUMS; baixe-o junto com os pacotes e verifique os arquivos que
você baixou com:
sha256sum --ignore-missing --check SHA256SUMS
As somas de verificação detectam corrupção acidental, mas não são uma assinatura autenticada.
text_indicators.yar no editor.O guia completo está incluído no Quipu em Help → Documentation. Seu código-fonte
também está disponível em documentation/content.
quipu.tomlSem configuração, o Quipu descobre arquivos de regras recursivamente e infere um
entrypoint a partir de cada arquivo que não é incluído por outro arquivo. Adicione um
quipu.toml na raiz do workspace quando precisar de entrypoints explícitos,
diretórios de include ou exclusões:
schema = 1
entrypoints = ["main.yar"]
include_dirs = ["rules", "../shared-rules"]
exclude = ["fixtures/**", "vendor/legacy/**"]
Consulte Workspaces and projects para o modelo completo de projeto e a referência do manifesto.
Atualmente o Quipu tem como alvo Linux x86-64. Uma compilação precisa de:
No Debian ou Ubuntu, instale as dependências nativas com:
sudo apt update
sudo apt install -y \
build-essential \
curl \
file \
libayatana-appindicator3-dev \
libgtk-3-dev \
librsvg2-dev \
libssl-dev \
libwebkit2gtk-4.1-dev \
patchelf \
rpm \
wget
Em seguida, compile os três formatos de pacote Linux:
git clone https://github.com/corelight/quipu.git
cd quipu/app
npm ci
npm run tauri -- build --bundles appimage,deb,rpm
Os artefatos são gravados abaixo de app/src-tauri/target/release/bundle/. A primeira
compilação pode demorar um pouco porque o Cargo compila o YARA-X e suas dependências
a partir do código-fonte.
Instale as dependências e inicie a aplicação de desenvolvimento:
cd app
npm ci
npm run tauri -- dev
Execute os testes unitários do frontend, a compilação de produção do frontend e os testes Rust com:
cd app
npm test
npm run build
cd src-tauri
cargo test --locked
A suíte de aceitação do menu nativo tem requisitos adicionais de servidor de exibição
do Linux. Consulte test/README.md para sua configuração e uso.
Quipu é uma aplicação Tauri com um frontend em TypeScript puro e um backend em Rust:
app/src/ TypeScript frontend
app/src-tauri/ Rust backend and desktop packaging
documentation/ Source for the bundled offline guide
examples/ Projects bundled with the application
test/ui/ Native-menu acceptance test harness
A versão da aplicação é definida em app/package.json; o Tauri lê esse
valor quando nomeia os pacotes e informa a versão em execução.
Contribuições são bem-vindas. Leia CONTRIBUTING.md antes
de abrir um pull request.
Por favor, não relate vulnerabilidades de segurança em uma issue pública. Siga o
processo de relato privado em SECURITY.md.