ClaudeとDiscourse関連の開発。どれくらい良いですか?

私は開発者ではありません。基本的なコーディング知識しかありません。簡単なコードは読めます。

最近、Gemini無料版に主に頼ってプラグインを作成しました。コードの95%はAIによって生成されました。

プラグインは確かに動作し、インターフェースと管理者エクスペリエンスもかなり良いのですが、コードのクリーンさについては正当な懸念があります。私のプロンプトの努力[1](そしてAIに公式コードの抜粋を手動で与えたこと)にもかかわらず、このコードがDiscourse環境をうまく活用していないことは確かです。ヘルパー、コンポーネント、クラスなどです。だからこそ、時々公式コードの一部をAIに与えたのです。

最近、多くの開発者がワークフローでAIを使用していると聞きました。AIがDiscourseのエコシステムを認識していれば、AIが生成するDiscourseプラグインのコードはどれだけ良くなるのか興味があります。

Claude、特にOpusモデルを試すように勧められました。また、非常にトークンを消費し、したがって高価であるとも聞きました。

私のプロジェクトに対して真剣な野心はありません。ただの趣味です。私が想像するプラグインが現実世界でどのように見えるか興味があり、AIはその点ではかなり優れています。

プラグインやコンポーネントを開発する際にAIを使用した経験はありますか? IDEに統合されたClaude Opusを試しましたか? それはどれくらい役に立ちましたか?
コードベースを適切に利用して新しいコードを生成しますか?
どれくらい高価ですか? どのプランを利用しましたか?


  1. 「プロンプトの努力」と書くと、妙に恥ずかしい気分になります :lolsob: ↩︎

「いいね!」 4

Discourseに関するAIとの作業は、AIが参照できるサンプルを持っていると大幅に良くなることがわかりました。特にClaude Codeはその点で優れています(Google GeminiのCLIも同様です!)。

趣味でやる人なら、月額20ドルのプランでかなり進めることができるでしょう… 一日の上限に達するのは難しくありませんが、その時点では、上限がリセットされるのを待つか、クレジットを購入するか選べます。

「いいね!」 3

価格について勘違いしていたようです。無料/プロ/マックスプランは、ウェブインターフェース経由でGeminiを使用するためのものです(https://claude.com/pricing)。APIの価格設定はトークンベースです(https://claude.com/pricing#api)。APIを使用するための月額サブスクリプションはありませんよね?

例えば、VSCodeでAIを使用する場合、APIを使用する必要があります。

編集:次回書く前にチュートリアルをいくつか読んでみますね :upside_down_face:

「いいね!」 1

この一週間、ask.discourse を使って Discourse プラグインを作成しようと時間を費やしました。作成したいプラグインの機能を記述するだけで、多くのヒントやコードスニペットが生成され、中には実際に動作するものもあったことに驚きました。

私は趣味でプログラミングをしています。Discourse インスタンスの他に、MySQL データベース、PHP バックエンド、Jquery/Javascript フロントエンドを備えた別のサーバーを運用していますが、プロのプログラマーではありません。そのサイトを開発している時間のほとんどは、Google にやりたいことをそのまま入力し、それが(おそらく Gemini が)コードサンプルを生成するという形です。ほとんどはそのまま動作し、もし動作しなくても、JavaScript の知識で理由を突き止めることができます。

長年にわたり多くのプログラミング言語を使用してきましたが、過去には、今では Google に入力して数分で完了できることを、何時間も、あるいは何日もかけて読み、検索し、実験して解明していました。

ask.discourse がどれほどうまく機能したかに驚き、最終的には私が望んでいたことを大まかに実行できるプラグインを完成させました。いくつかのスタイリング(CSS)を施せば、実用的なプラグインになるかもしれません。AI 支援サービスがコード作成を効率化できる可能性に興味をそそられています。

「いいね!」 3

私のDiscourseページ用に、Antigravityを使用して最も人気のあるアニメシリーズを表示するプラグインを作成しました。ウォッチリストも作成しました。時々不具合が発生し、多くの修正が必要になりますが、私はかなり満足しています。

「いいね!」 2

VSCodeでプロプラン(20ドル)で動作させることができました。消費量は妥当だと思います。3時間のプロンプトでこれが得られました。

今のところ、結果はあまり良くありませんでした。:thinking:

興味深いのは、Discourseのプラグインやテーマコンポーネント(スケルトンから)を作成する際に、何を構成すべきか、またはClaudeに何を伝えるべきかを説明することでしょう。

Claudeの効率を最大化するために、CLAUDE.mdにどのような指示を書くべきでしょうか?

AIがコードベース内の情報を探す際に、特定のDiscourseディレクトリ(コントローラー、モデル、シリアライザー、サービスなどを考えています…)を優先すべきでしょうか?

標準的なファイルの階層、名前付け、規約をAIに認識させるにはどうすればよいでしょうか?

「いいね!」 1

スキルを出荷すべきです。@j.jaffeux と私は、それらが非常に役立つと考えています。

「いいね!」 6

こちらのことでしょうか


スキルを初めて利用する方は、以下が役立つかもしれません。

このリストは網羅的なものではなく、日々急速に増え続けています。

「いいね!」 1

私はhttps://github.com/discourse/discourse/blob/main/AI-AGENTS.mdを見ました。

質問があります!

  • find()の結果を保存しない - 再レンダリング後に古い要素参照が発生するため

  • 変更を加える際は必ずリンティングを行う

AIはすべて大文字の強調を理解するでしょうか?「Never」や「Always」と書いた場合と動作は変わるでしょうか?

「アーキテクトモード」やその他の「xxxモード」プロンプトは、AI開発におけるソフトスタンダードになりつつあるのでしょうか?それらはモデルの動作に実際の影響を与えるのでしょうか?それらは単なる慣例でしょうか?

  • 明らかなテストは書かない

何が明白なテストなのかは分かりますが、AIは明白なテスト(または明白な何か)を理解するのでしょうか?

数日間、VSCodeでClaudeを試しました。すべてが自律的に動作するのを見るのはかなり印象的です。ファイルの読み取り、作成、変更、bashコマンドの実行など… :exploding_head:

プラグイン作成に関するClaudeの作業について、私が観察したことは次のとおりです。

  • 同じコード部分を反復処理して問題を解決する際、過度に具体的な変数名を使用する傾向があります。例えば、変更された箇所を指摘するかのように、非常にきれいで単純な url の代わりに original_url のような変数名を付けることがありますが、それは不要です。

  • 反復処理の結果、コードが複雑になり、時には不必要に複雑なクエリになることがあります。AIにコードをレビューさせ、リファクタリングできる部分を指摘させることは、時々役に立つことが証明されています :slight_smile:

  • 特定の問題に対する解決策を求められた場合、その回答には満足しています。
    提案は正確に見えます。複数のオプションを提案する場合、それぞれの長所と短所を正確に比較検討できます。

  • SCSSでは、(まれに)Discourseのカラー変数を使用するのではなく、推奨されないハードコードされた色を使用します。

  • Designing for Different Devices (Viewport Size, Touch/Hover, etc.) を認識していないようで、標準のメディアクエリに頼ります。

  • いくつかのタスクを実行した後、AIにコードをレビューさせ、保守性に影響を与えることなく最適化できる部分がないか確認させるのが好きです。結果についてはあまり問題ありませんでした。時々、やりすぎてコードを壊してしまうことがあります。

  • 時折、セキュリティと堅牢性のために不要な条件を作成するように見えますが、それは現実世界では存在しないと思われる状況に対してです。
    例えば、私の検索関連プラグインでは、投稿に関連付けられているトピックがあるかどうかを確認します。しかし、トピックのない投稿はDiscourseには存在しないはずだと思います。もし存在するとしたら、それは以前に何かが非常にうまくいかなかったことを意味しますよね?私のプラグインでそのチェックを行うのは意味がないように感じます。:thinking:

  • テストの雛形作成は得意なようです!

したがって、高度なAI構成を使用していなくても、これまでのところ良い経験をしています。
週ごとの割り当て量を4日で使い果たしてしまい、3日間の休憩を強制されることになりました :raising_hands:

Discourseのスキルが追加されたときに、どのように変化するか興味があります。

「いいね!」 4