「今日のTK Agent開発内容を記事にして」と依頼したとき、保存済みのSomeday100に関する長期記憶が記事の主題になった。記憶があること自体は便利でも、現在の依頼より強く働くと、生成結果は期待から外れてしまう。

そこでArticle Agentへ渡すContextの優先順位を明示した。

今回のユーザー依頼
  > 関連する短期履歴
  > 関連する長期記憶

プロジェクト名だけでは渡さない

対策は、長期記憶を完全に止めることではない。現在の依頼と関係する記憶だけを選択し、プロジェクト名が一致するだけの情報はArticle Agentへ渡さないようにした。

この判定はArticle Agentの通常経路だけでなく、単体起動時のfallbackにも同じように適用した。入口が複数ある場合、片方だけを直すと別の経路から同じ問題が再発するためである。

Routerだけでなく各Agentの入力を整える

Routerが正しくArticle Agentを選んでも、渡す材料が不適切なら記事の焦点はずれる。そこでManager側では短期履歴を長期記憶より先に置き、各Agentのプロンプトでも「今回の依頼を最優先する」意図を明示した。

Website Agentでも同じ考え方を使っている。あるサービスに関する記憶が存在しても、別の依頼をそのサービスの話題へ変えない。記憶は回答の補助材料であり、質問の置き換えではない。

検証結果

  • 無関係なSomeday100の長期記憶をArticle Agentから除外できた
  • 開発内容を依頼したとき、依頼に沿った記事生成を確認できた
  • 単体起動時のfallbackにも同じ選択規則を適用できた

長期記憶を増やすほど、検索精度だけでなく「渡さない判断」が重要になる。現在の依頼、直近の会話、保存済み知識という順番を固定することで、Agentの出力を利用者の意図へ戻しやすくなった。