Desenvolvimento e Implementação de Plugins

Criar um Plugin com um Agente de IA

Substitua o texto reservado do requisito abaixo e forneça a instrução completa ao seu agente de codificação:

Leia e siga o guia de desenvolvimento de plugins do Seer em https://raw.githubusercontent.com/ccseer/Seer-Plugins/refs/heads/master/plugin_development_guide.md. Trate-o como a única fonte da verdade para arquitetura, plugin.json, implementação, validação e empacotamento. Se o guia não estiver disponível, pare e informe isso antes de prosseguir.

Antes de realizar qualquer trabalho, inspecione a Requirement (Requisito) abaixo. Se estiver ausente, for um texto reservado não alterado ou for muito ambígua para implementar, faça uma pergunta de esclarecimento e aguarde. Não infira o requisito ausente.

Assim que estiver claro, escolha Convert ou DLL e justifique brevemente a escolha, depois implemente um plugin completo e instalável no workspace atual. Não modifique o Seer em si nem pare em um plano ou trechos de código.

Siga cada etapa de validação aplicável no guia e informe os resultados reais. Execute um teste de pré-visualização no próprio aplicativo Seer quando possível; caso contrário, declare explicitamente que a verificação em tempo de execução não foi realizada.

Requirement: [SUBSTITUA ESTE TEXTO RESERVADO pela solicitação do plugin.]

Plugins de Conversão

O Seer trata os plugins de conversão como executores externos. Quando um arquivo é acionado, o Seer executa o programa configurado, passando os caminhos dos arquivos por meio de variáveis reservadas.

Variáveis Reservadas

  • ${input_file}: Caminho absoluto do arquivo de origem.
  • ${output_file}: Caminho base do arquivo de saída onde o plugin deve salvar o resultado processado (adicione a extensão desejada, ex: ${output_file}.json).
  • ${use_backslash}: Flag opcional para formatar os separadores de caminho usando barras invertidas nativas do Windows (\).
  • ${seer_dir}: Caminho do diretório onde o Seer.exe reside.
  • ${seer_exe}: Caminho absoluto para o Seer.exe.
  • ${7z}: Caminho absoluto para o 7z.exe fornecido com o Seer.

Fluxo de Trabalho de Execução

  1. Acionamento: O usuário pressiona ESPAÇO em um arquivo.
  2. Resolução: O Seer identifica o plugin associado à extensão do arquivo.
  3. Execução: O Seer executa o arquivo executável (ex: ApkMetaInfo2Json.exe "${input_file}" "${output_file}.json").
  4. Exibição: Assim que o processo é concluído, o Seer lê o arquivo gerado correspondente a ${output_file}.* e o renderiza usando o visualizador interno correspondente à extensão de saída.

Tipos de Executáveis e Scripts Suportados

Um plugin de conversão pode ser qualquer executável capaz de manipular entrada/saída via CLI:

Gerenciamento de Arquivos Temporários

Os plugins geralmente geram arquivos intermediários.

  • Limpeza Automática: O Seer purga automaticamente os arquivos temporários com mais de 21 dias por padrão.
  • Remoção Forçada: Adicione ${no_cache} aos parâmetros do seu comando para instruir o Seer a ignorar o cache de conversão e salvar a saída temporária no diretório de exclusão automática (autodel/), que é limpo automaticamente quando o Seer é encerrado.

Plugins DLL

Para alto desempenho ou integração profunda, o Seer suporta plugins baseados em DLL escritos em C++/Qt e compilados como bibliotecas dinâmicas.

Projetos de Referência

Consulte estes repositórios oficiais para a implementação da interface do plugin:

Projeto Propósito
F3DViewer Pré-visualização 3D
OfficeViewer Documentos do Office
FontViewer Renderização de fontes
JsonTreeViewer Visualização JSON
Collections Todos