エージェントにタスクを割り当てる

ゴブリンに作業させるあらゆる方法: Linear の課題を割り当てる、マージリクエストでメンションする、GitHub の課題にラベルを付ける、Slack で依頼する、プルリクエストを自動レビューさせる、または定期タスクをスケジュールする。

TaskGoblin には単一の「実行」ボタンはありません。代わりに、エージェントはあなたがすでに使っているツールを見張っていて、あなたが引き渡した瞬間に作業を引き受けます——同僚に仕事を委任するときと同じ所作です。このページはそれらのトリガーの完全なカタログです。

どの方法を使っても、エージェントはすでにコンテキストを把握した状態でタスクに着手し、結果を同じ場所に報告します。

Linear の課題を割り当てる

Linear の課題の担当者を TaskGoblin エージェントに設定します。エージェントは課題のタイトル、説明、コメントを読み、作業を行い、進行中のステータス更新とともにマージリクエストを課題に紐付けます。これは最も一般的なトリガーであり、クイックスタートで使われている方法でもあります。

もう一度対応させたい場合は、変更内容を説明するコメントを課題に残してください——エージェントは同じブランチで作業を再開します。

マージリクエストまたはプルリクエストでメンションする

既存の MR または PR に、ゴブリンをメンションするコメントを残します。

  • GitLab では、マージリクエストのノートで @taskgoblin を使います。
  • GitHub では、プルリクエストや課題のコメントで @taskgoblin を使います。

反復作業に使えます: @taskgoblin please address the review comments(レビューコメントに対応してください)や @taskgoblin add tests for the edge case in the last commit(直近のコミットのエッジケースにテストを追加してください)など。エージェントは同じブランチにフォローアップのコミットをプッシュします。

自動コードレビュー

マージリクエストやプルリクエストが作成・更新されると、TaskGoblin はメンションなしで自動的にレビューを行い、フィードバックをコメントとして投稿できます。これにより、エージェントは自分が作成した変更だけでなく、すべての変更に対する一次レビュアーになります。

課題からトリガーする

課題から始めるために Linear を使う必要はありません。

  • GitHub では、課題に taskgoblin ラベルを追加します。ラベルがトリガーとなり、その課題のコメントでのメンションが実行を継続させます。
  • GitLab では、課題を @taskgoblin ボットに割り当てるか、課題のコメントでメンションします。

Slack で依頼する

Slack のスレッドでゴブリンをメンションします。会話が行われているそのスレッドで返信するため、正式なチケットではなく議論として依頼が始まる場合には Slack が適した窓口になります。まずインテグレーションから Slack を接続してください。

定期タスクをスケジュールする

オンデマンドではなく一定の周期で発生すべき作業には、Loopsを作成します。これは、エージェントが一回限りまたは繰り返しのタイミングで実行するフリーテキストの指示です。各実行は他のあらゆる実行とまったく同じように振る舞います——スレッドを生成しマージリクエストを開くため、スケジュールされた作業も同じ履歴とレビューフローを共有します。これらは /{organisation}/loops から管理できます。

良い候補: 毎週の依存関係の更新、毎晩の変更履歴のドラフト作成、定期的なクリーンアップ作業。

すべてのトリガーに共通すること

  • エージェントはコンテキストを携えて到着します。 開始する前に、課題、スレッド、またはコメント履歴を読み込みます。
  • 作業はサンドボックス内で行われai-{issue-identifier} という名前のブランチ上で実行されます。あなたのマシン上で行われることは決してありません。
  • 結果は依頼した場所に戻ってきます。 マージリクエスト、レビューコメント、Slack への返信——いずれもトリガーしたのと同じ場所に届きます。

トリガーからマージリクエストまでの間に何が起きるかについては、エージェントの仕組みをお読みください。