Skip to content

v0.2.0

Choose a tag to compare

@kecbigmt kecbigmt released this 26 Feb 01:31
· 41 commits to main since this release
a640e7c

提案作成のもとになった会話(Slackスレッド)のリンクをドキュメント内に保持するようにし、エージェントが提案修正時に参照できるようにしました。

エージェントは、ファイル上部に会話のリンクを以下のように残すようになります(YAMLフロントマター形式)。

---
sources:
  - https://app.slack.com/client/T01234567/C01234567/123456789.123456
---
# 本文が続きます

今までは会話の履歴をPull Requestの本文に残すようにプロンプティングしていましたが、

  • 挙動が安定せず履歴を残さないことがある
  • 会話にアップデートがあっても参照できない
  • PR本文が長くなって人間にとって読みにくい

といった課題がありました。

今回のリリースにより、提案修正時にはエージェントがリンクを使って元の会話を参照するようになり、これらの課題が解消します。

また、全体的なプロンプト調整や挙動修正により、今までよりも既存ファイルを参考にしながら作業することが多くなります。

全体的なコードリファクタリングも含まれています。

関連Issue

重要な変更

機能追加・仕様変更

  • ドキュメントファイルのYAMLフロントマターに情報源のリンクを記載できる機能を追加
    • YAMLのパースや生成のために依存関係と実装を追加
    • create_fileツールを呼び出すときに情報源をつけられるようにする
    • link_sourcesツールを追加して既存ドキュメントに情報源のリンクをつけられるようにする
  • エージェントがドキュメントを更新するときに、情報源のリンクを辿って一次情報を確認できる機能を追加
    • エージェントが一次情報を確認できるfind_sourceツールの定義を追加 219128d
    • find_source が呼び出されたときのハンドラを実装 5f1019e
    • 情報源を参照できるSourceRepositoryの実装を追加
  • Slackスレッドの履歴をPR本文に貼り付けずにURLを貼るようにプロンプトを調整 9b3df77
  • 既存ドキュメントや情報源の確認をしてからPRを作成・編集するようにエージェントのプロンプトを全体的に調整
  • ragtool(CLIツール)にRAGコーパスにクエリするコマンドを追加 45e0cf1

修正

  • RAGコーパスへのクエリ結果にドキュメントのファイルパスが含まれていなかった点を修正 abd7b78
  • GitHubでIssueコメントの修正や削除にエージェントがいちいち反応しないよう修正 de60426

リファクタリング・実装改善

  • application層にtooluseパッケージを新設して、ツールが呼び出された時の処理をまとめる
  • domain/dataに定義したFileRepositoryを実装して、既存のFileChangeServiceと置き換える
  • 不要コードの削除 082c765
  • ConversationServiceから会話のURIを取得できるようにする
  • SlackスレッドやGitHub Issueコメントへの参照を構造体として定義してURIに変換しやすくする