Pular para o conteúdo

Plugins

Além de montar, verificar e indexar, tudo o que a CLI faz é um plugin: uma ferramenta nomeada atrás de um único contrato, com a própria pasta sob .eidos/plugins/<name>/, ligada por raiz. Nove vêm no pacote.

O Eidos não é mais um editor de markdown. Ele facilita uma só coisa: a definição de um produto, a raiz de Blueprints (planos), que é a fonte de verdade do que o produto é. Todo o resto que a ferramenta faz serve a essa verdade e é subordinado a ela. Um canvas a desenha; um comentário a discute; uma tarefa a serve; uma versão nomeia um commit dela. Nenhum deles vira uma segunda definição ao lado.

Duas regras seguem daí:

  • Todo plugin vive na própria área de trabalho, .eidos/plugins/<name>/, ou em uma pasta da raiz declarada como sua. Desligá-lo deixa a definição exatamente como estava.
  • Todo plugin é construído para este ciclo de vida, não para uso geral. Quem quer um quadro branco ou um quadro de tarefas por si só abre outra ferramenta.
Plugin Facilita Ligado por padrão Guarda em
Canvas Desenhar a definição: páginas de esboços e Blueprints, estilizados pelas propriedades do Framework (a estrutura) sim .eidos/plugins/canvas/<id>.yaml
Git Ler o seu histórico: os commits de um Blueprint e um visualizador de diff, Source control (o que mudou sob a raiz, um commit disso), a identidade que assina um comentário, as versões registradas, git mv e git rm atrás de cada renomeio e exclusão onde a raiz é um repositório o comando do visualizador no seu local.yaml
Comments Discuti-la: threads sobre um Blueprint, um documento, uma página de canvas ou uma tarefa, ancoradas a um título ou a um item e projetadas no arquivo como texto legível sim .eidos/plugins/comments/threads/<id>.yaml, uma região comments:threads enquanto o arquivo tiver threads
Backlog O trabalho que a serve: tarefas com status, colunas, tipos, marcos e rascunhos, em um quadro e em uma tabela, nunca dentro de um Blueprint não uma pasta backlog/ que o plugin possui, configurações na sua pasta
Decisions O que foi decidido sobre ela: decisões com tipos e status, confirmadas a partir de uma caixa de entrada e listadas nos Blueprints para os quais foram tomadas não uma pasta decisions/ que o plugin possui, configurações na sua pasta
Assets Os arquivos que não são markdown: imagens, PDFs, qualquer coisa, listados, linkados a Blueprints e tarefas, incorporados ou linkados a partir do editor não a pasta assets/ da raiz, um índice na sua pasta
Linter Manter o markdown em uma só forma: regras que a raiz define, aplicadas a cada salvar e relatadas pela verificação sim .eidos/plugins/linter/settings.yaml
Terminal O seu próprio shell no painel, iniciado na raiz não nada em disco
Plato Uma conversa com o agente de código que você já roda (Claude Code, Codex ou qualquer comando que fale ACP), com o que a página tem aberto levado como contexto sim .eidos/plugins/plato/conversations/, as privadas sob local/

Cada um tem uma página própria nesta seção: o que acrescenta ao navegador, o que guarda em disco, seus comandos e o que a verificação relata sobre ele. O navegador → · Comandos dos plugins →

Um plugin está ligado ou desligado por raiz: plugins.<name>: true | false no settings.yaml da CLI, partilhado com a raiz, com a mesma linha no local.yaml privado sobrepondo. eidos plugin os lista, eidos plugin enable|disable <name> escreve o interruptor, eidos plugin set <name> <setting> <value> escreve uma das suas configurações no arquivo que o seu escopo nomeia, eidos setup os oferece como menu, e a página Plugins do navegador tem um interruptor e um formulário de configurações por plugin. Desligado, um plugin não registra nada: nenhum comando, rota, achado, visão ou região; sua pasta e seus arquivos ficam onde estão para o dia em que ele voltar.

eidos instructions <plugin> imprime o guia de um plugin enquanto ele está ligado, e um plugin que tenha algo a dizer a um agente diz no AGENTS.md sob a nota do Eidos.

O padrão dá a uma ferramenta um nome e quatro lugares para usá-lo:

  • Sua pasta, .eidos/plugins/<name>/, commitada com o Framework: settings.yaml para o que a raiz decide, local.yaml e local/ para o que é privado, de uma pessoa e nunca commitados (o .eidos/.gitignore da raiz carrega os dois). A pasta própria da CLI é eidosmd/: os interruptores dos plugins, o rigor, os usuários, o prefixo de tag, as versões e os rascunhos partilhados viajam com a raiz; o tema, o editor, o layout da bancada e os rascunhos privados ficam na máquina.
  • Suas pastas na raiz, declaradas sob folders com owned_by: "@<name>/<kind>" (o backlog/ do Backlog, o assets/ do Assets). O que uma pasta dessas contém e o que é verificado dentro é a ferramenta quem diz; o padrão não lê nada disso. A raiz →
  • Suas propriedades, properties.tools.<name> no Framework.yaml, e uma chave com o seu nome em qualquer linha de propriedade (canvas estiliza um nó pelo valor de uma propriedade). Propriedades →
  • Suas regiões, de <!-- <name>:<region> --> a <!-- /<name>:<region> --> dentro de um arquivo markdown: um trecho que a ferramenta possui e reescreve por inteiro (as threads do Comments no pé de um Blueprint, uma imagem que o Assets incorporou). Regiões →

O padrão não lê nada disso, o eidos check nunca aponta e o eidos migrate leva tudo intacto.