Qual é o processo correto para automação personalizada?

Sou um novato e tenho algumas dúvidas sobre o tutorial de criação de automações personalizadas.

Na minha primeira tentativa, tentei escrever o script de automação diretamente no ambiente de desenvolvimento do GitHub Codespace (eu não entendo a sintaxe, o código foi escrito pelo Claude).
Após a modificação, a estrutura do arquivo deve ser assim:

plugins/automation/
├── lib/
│   └── discourse_automation/
│       ├── scripts.rb                 # Modificado
│       └── scripts/
│           ├── ...                    # Outros scripts
│           └── remove_expired_group_members.rb  # Adicionado
└── config/
    └── locales/
        ├── server.en.yml              # Modificado
        ├── client.en.yml              # Modificado
        ├── server.zh_CN.yml           # Modificado
        └── client.zh_CN.yml           # Modificado

Mas não tenho certeza se posso fazer isso em um ambiente de produção.
Além disso, não sei se essas modificações serão perdidas com um rebuild ou com a atualização do plugin automation, então não ouso tentar em produção. Talvez eu devesse enviar uma solicitação de recurso para que os mantenedores do plugin a adicionem?

Espero que amigos experientes possam me informar sobre o fluxo de trabalho correto, desde a escrita do teste até a aplicação em produção.
Muito obrigado!

Acredito que terá que ser em um novo plugin.

Você pode conferir:

1 curtida

Eu verifiquei o link que você forneceu.
Você poderia me explicar por que devo usar plugins em vez de criar scripts dentro do plugin de automação?

  1. Eu não sou um profissional, e criar um plugin parece um pouco mais difícil.
  2. Eu tenho muitas funcionalidades para implementar, o que parece exigir a criação de muitos plugins? (Embora eu também goste de plugins, pois podem ser compartilhados)

Se não me engano, se você fizer alterações no plugin, elas serão sobrescritas na próxima vez que houver uma atualização.

1 curtida

OK, era exatamente isso que eu estava temendo
Então o recurso de automação personalizada parece não ter muita utilidade para o usuário? :joy:
Vou dar mais uma olhada na documentação e, se não funcionar, tentarei criar um plugin

1 curtida

Eu acho que o tutorial (que é um rascunho) está faltando essa informação. Ele explica como criar novas automações, mas não onde fazê-lo. As respostas mencionam exemplos de plugins, como o vinculado por @NateDhaliwal.

Simon também sugere dar uma olhada no plugin de exploração de dados: Create custom Automations - #6 by simon.

Depende do que você quer dizer com “usuário”? :smile: Como desenvolvedor, você certamente pode criar um novo plugin que adicione automações. Esta é a maneira correta de fazer isso.

Como você menciona não entender código, mas ser capaz de usar IA para isso, talvez você ache esta discussão interessante. Claude & Discourse-related development. How good is it?.

Estou atualmente experimentando isso (mas tenho noções vagas de código – não o suficiente para criar nem um plugin simples sozinho!), e compartilharei minha experiência recente com isso em breve.

Como o Claude o direcionou para editar o plugin de automação, você pode querer refinar seus prompts e fazer com que a IA siga boas práticas reais.

1 curtida