カスタムオートメーションの正しい手順は?

私は初心者で、カスタムオートメーションの作成チュートリアルについていくつか質問があります。

初めて、GitHub Codespace開発環境で直接オートメーションスクリプトを記述しようとしました(構文は理解しておらず、コードはClaudeが作成しました)。
変更後、ファイル構造は次のようになるはずです。

plugins/automation/
├── lib/
│   └── discourse_automation/
│       ├── scripts.rb                 # 変更済み
│       └── scripts/
│           ├── ...                    # 他のスクリプト
│           └── remove_expired_group_members.rb  # 新規追加
└── config/
    └── locales/
        ├── server.en.yml              # 変更済み
        ├── client.en.yml              # 変更済み
        ├── server.zh_CN.yml           # 変更済み
        └── client.zh_CN.yml           # 変更済み

しかし、本番環境でこのように操作できるのかどうか分かりません。
また、このような変更がrebuildやautomationプラグインの更新によって失われるのではないかという懸念があり、本番環境で試すことができません。プラグインのメンテナーに機能追加をリクエストすべきかもしれません。

経験豊富な方から、テスト作成から本番環境への適用までの正しい手順について教えていただけると幸いです。
大変感謝いたします!

新しいプラグインにする必要があると思います。

以下をご確認ください:

「いいね!」 1

提供されたリンクを確認しました。
プラグインを使用すべき理由と、自動化プラグイン内でスクリプトを作成すべきでない理由について、ご説明いただけますでしょうか?

  1. 私は専門家ではなく、プラグインの作成はより難しそうに見えます。
  2. 実現したい機能が多く、多くのプラグインを作成する必要があるように見えます(共有できるためプラグインも好きですが)。

もし私が間違っていなければ、プラグインに変更を加えると、次にアップデートがあったときに上書きされてしまいます。

「いいね!」 1

OK、それがまさに私が懸念していたことです
では、カスタムオートメーション機能はユーザーにとってあまり意味がないように思えますか? :joy:
もう一度ドキュメントを確認し、うまくいかない場合はプラグインの作成を試みます

「いいね!」 1

チュートリアル(ドラフト版)にはこの情報が不足していると思います。新しいオートメーションを「作成する方法」は説明されていますが、「どこで」作成するのかが書かれていません。ただし、@NateDhaliwalがリンクしたようなプラグインの例については言及されています

Simonは、データエクスプローラプラグインも確認することを提案しています:Create custom Automations - #6 by simon

「ユーザー」をどういう意味で言っているかによりますね? :smile: 開発者であれば、オートメーションを追加する新しいプラグインを作成することは確実にできます。これが適切に行う方法です。

コードの理解がないが、AIを使ってこれを行うことができると述べているので、このディスカッションが興味深いかもしれません。Claude & Discourse-related development. How good is it?

私は現在これを実験中です(ただし、コードに関する漠然とした知識しかなく、自分で簡単なプラグインを作成するのに十分ではありません!)。その経験を近いうちに共有する予定です。

Claudeがオートメーションプラグインの編集を指示したので、プロンプトを洗練させ、AIに実際の良い慣行に従わせることを検討してもよいかもしれません。

「いいね!」 1