Sobre o projeto
Este é um repositório de coleção de plugins voltado para o DeepSeek Harness (DSH), reunindo diversos plugins DSH criados pelo autor. Cada plugin fica em um subdiretório independente, sendo um pacote de plugin completo e publicável separadamente, com package.json e README próprios, podendo ser instalado e usado individualmente. O repositório é ampliado gradualmente conforme as necessidades de uso do próprio autor.
Os plugins atualmente incluídos são:
- dsh-opencode-sync (nome do plugin dsh-model-sync): sincroniza com um clique a lista de modelos do OpenCode Go e do OpenCode Zen para "Configurações → Modelos".
- dsh-bash-prefix: executa automaticamente um comando prefixado personalizado pelo usuário antes de cada execução do bash, com interruptor e campo de texto, podendo ser usado para ativar o proxy VPN com um clique.
A descrição do repositório indica que mais plugins serão adicionados continuamente.
A compatibilidade entre hosts é um dos principais pontos de design do projeto. Todos os plugins usam o mesmo código para rodar simultaneamente em dois hosts: o Harness em linha de comando (dsh CLI, como dsh web / dsh --profile web) e o DSH Desktop (aplicativo Electron empacotado, com plugins gerenciados pelo mercado de plugins integrado). O autor explica que os contratos de execução dos dois são completamente idênticos, compartilhando os mesmos serviços schemastery / typert / settings / credentials / shell, além das mesmas regras de carregamento de bundle (contrato de profile do dsh-app-boot: qualquer pacote que declare dsh.bundle.patch será carregado como bundle). Portanto, os plugins não precisam ser escritos separadamente para cada plataforma, nem exigem ramificações condicionais em tempo de execução; basta declarar completamente o empacotamento.
As declarações ficam concentradas no campo dsh do package.json, incluindo: bundle.patch apontando para a própria camada de patch (sem esse item, o pacote só pode ser registrado por inserção manual via profile, e a migração de plugins e o gerenciamento pelo mercado do Desktop o ignorarão); client declarando que a metade do navegador (UI da página de configurações) é carregada pelo host como web app; compatibility declarando as versões do Harness já verificadas como compatíveis. O cordis.patch.yml é a entidade dessa declaração, com conteúdo sendo uma lista de entradas do loader (em insert, contendo id e name). O autor enfatiza que o código do plugin em si não contém nenhuma verificação de host, não lê DSH_HOME para adivinhar o layout de instalação, nem detecta o ambiente de execução; as diferenças de plataforma ficam todas concentradas nos dois arquivos de declaração package.json e cordis.patch.yml.
Método de instalação: no dsh CLI, instale apontando para o diretório do plugin com dsh plugin --profile web add; no DSH Desktop, gerencie os plugins pelo mercado de plugins (dshmarket), e plugins em formato de diretório local podem ser carregados pelo instalador de geração integrado do desktop ou instalados pela interface do mercado em "Configurações → Plugins". Após a instalação, é necessário reiniciar o Harness para que tenham efeito, pois a metade do host é carregada na inicialização do processo. As formas específicas de configuração de cada plugin estão nos READMEs dentro de seus subdiretórios.
Quanto à estrutura de diretórios, a raiz do repositório contém READMEs em chinês e inglês, .gitignore e vários subdiretórios de plugins; cada subdiretório de plugin contém package.json (com declarações dsh.bundle / dsh.client), cordis.patch.yml (camada de patch do bundle), index.js (metade do host, plugin Cordis), client.js (metade do client, UI da página de configurações), typert.host.js (contrato Typert Remote) e arquivos README.
Em relação à licença, todos os plugins do repositório são de código aberto sob a licença MIT; consulte o LICENSE dentro do diretório de cada plugin.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.