← Back to home

Documentation

By Pscodium · 8/6/2026 · 6 views

OCS Clipboard

Tray application em Rust para histórico de clipboard com classificação local, persistência em SQLite e busca com embeddings locais quando o modelo estiver disponível.

MVP implementado

  • watcher de clipboard com deduplicação por hash
  • classificação automática: code, link, text, command, json, email, sql, image
  • persistência em SQLite no diretório de dados do usuário
  • tray icon com menu de abrir, limpar cache SQLite e sair
  • atalho global Ctrl + Shift + V
  • popup em webview com busca e copiar de volta ao clipboard
  • embeddings locais com fastembed em modo lazy

Executar

cargo run

Na primeira geração de embedding, o fastembed pode baixar o modelo localmente.

Estrutura

  • src/ai: classificação e embeddings
  • src/clipboard: watcher do clipboard
  • src/db: schema e consultas SQLite
  • src/tray: tray icon e hotkey global
  • src/ui: widget popup em tao + wry

Limpar cache SQLite

Use o menu do tray e clique em Limpar cache. Isso remove todos os itens persistidos do histórico e atualiza o widget.

Gerar release .exe

cargo build --release

Gerar release .msi

Instale o empacotador uma vez:

cargo install cargo-wix

Instale o WiX Toolset 3.x em um terminal com privilégios de administrador:

winget install --id WiXToolset.WiXToolset --accept-package-agreements --accept-source-agreements

Depois gere o binário release e o instalador MSI:

.\build-release.ps1

Na primeira execução o script gera automaticamente wix\main.wxs se ele ainda não existir.

O .msi é gerado em target\wix.


Comments

No comments yet.