Quel est le bon processus pour l'automatisation personnalisée ?

Je suis novice et j’ai quelques questions concernant le tutoriel sur la création d’automatisations personnalisées.

J’ai essayé d’écrire un script d’automatisation directement dans l’environnement de développement GitHub Codespace pour la première fois (je ne connais pas la syntaxe, le code a été écrit par Claude).
Après modification, la structure des fichiers devrait être la suivante :

plugins/automation/
├── lib/
│   └── discourse_automation/
│       ├── scripts.rb                 # Modifié
│       └── scripts/
│           ├── ...                    # Autres scripts
│           └── remove_expired_group_members.rb  # Ajouté
└── config/
    └── locales/
        ├── server.en.yml              # Modifié
        ├── client.en.yml              # Modifié
        ├── server.zh_CN.yml           # Modifié
        └── client.zh_CN.yml           # Modifié

Cependant, je ne sais pas si cette manipulation est autorisée en environnement de production.
De plus, je ne sais pas si ces modifications seront perdues lors d’un rebuild ou d’une mise à jour du plugin automation, donc je n’ose pas essayer en production. Peut-être devrais-je soumettre une demande de fonctionnalité pour que les mainteneurs du plugin l’ajoutent ?

J’espère que des amis expérimentés pourront m’indiquer le processus correct, de l’écriture des tests à l’application en environnement de production.
Merci beaucoup !

Je crois que cela devra se faire dans une nouvelle extension (plugin).
Vous pouvez consulter :

1 « J'aime »

J’ai consulté le lien que vous avez fourni.
Pourriez-vous m’expliquer pourquoi il est préférable d’utiliser des plugins plutôt que de créer des scripts dans l’automatisation des plugins ?

  1. Je ne suis pas un professionnel, et il semble plus difficile de créer un plugin.
  2. J’ai de nombreuses fonctionnalités à implémenter, ce qui semble nécessiter la création de nombreux plugins ? (Bien que j’aime aussi les plugins pour le partage)

Si je ne me trompe pas, si vous apportez des modifications au plugin, elles seront écrasées lors de la prochaine mise à jour.

1 « J'aime »

OK, c’est ce que je craignais
Alors, la fonctionnalité d’automatisation personnalisée n’est pas très utile pour l’utilisateur ? :joy:
Je vais relire la documentation, et si cela ne fonctionne pas, j’essaierai de créer un plugin.

1 « J'aime »

Je pense que le tutoriel (qui est une ébauche) manque de cette information. Il explique comment créer de nouvelles automatisations, mais pas le faire. Les réponses mentionnent des exemples de plugins cependant, comme celui lié par @NateDhaliwal.

Simon suggère également de jeter un œil au plugin d’exploration de données : Create custom Automations - #6 by simon.

Cela dépend de ce que vous entendez par « utilisateur » ? :smile: En tant que développeur, vous pouvez certainement créer un nouveau plugin qui ajoute des automatisations. C’est la manière de le faire correctement.

Puisque vous mentionnez ne pas comprendre le code, mais être capable d’utiliser l’IA pour cela, peut-être trouverez-vous cette discussion intéressante. Claude & Discourse-related development. How good is it?.

Je suis actuellement en train d’expérimenter avec cela (mais j’ai des notions vagues de code – pas assez pour créer même un plugin simple par moi-même !), et je partagerai bientôt mon expérience récente à ce sujet.

Puisque Claude vous a dirigé vers la modification du plugin d’automatisation, vous voudrez peut-être affiner vos invites et demander à l’IA de suivre de bonnes pratiques réelles.

1 « J'aime »