新方式開発記録自動取得の実験とファイル名修正(開発日記 No.073)
関連リンク
はじめに
昨日は開発記録の取得方法を改善しました。今日は、その改善された方法、つまり新方式での開発記録自動取得の実験を行います。設計通りに動作するか、実際に試して確認していきます。
背景と目的
これまで、開発記録は手動で作成・記録していました。しかし、この作業は手間がかかり、記録漏れも発生しやすいため、自動化したいと考えていました。そこで、LLMを活用して開発記録を自動的に取得する仕組みを導入することにしました。今日は、その新方式が実際にワークフローに組み込めるレベルに達しているか検証します。
検討内容
まずは、自動記録の仕組みが正しく動作するかを確認します。具体的には、ファイルシステムへのアクセス権限、自動記録ファイルの作成、テンプレートの適用、会話ログの自動記録、ワークスペースの構成などが設計通りに機能しているかを検証します。
また、昨日の開発記録を参考に、ファイル名が正しいフォーマットになっているかどうかも確認します。もし、フォーマットが異なっている場合は、auto_logging_guide.md
を修正する必要があります。
実装内容
まず、LLMに /home/centervil/repos/Docs/dev-docs/auto_logging_guide.md
を読ませて、内容を理解させようとしましたが、アクセス権限エラーが発生しました。原因を調査したところ、MCP設定ファイルの設定と実際のアクセス許可が異なっていることが判明。MCPサーバーを再起動したところ、無事アクセスできるようになりました。
その後、昨日の開発記録を読み込ませ、新方式での自動記録が設計通りに機能しているか検証しました。
その結果、ファイルシステムへのアクセス、自動記録ファイルの作成、テンプレートの適用、会話ログの自動記録、ワークスペースの構成など、基本的な機能は正常に動作していることが確認できました。
しかし、ファイル名が 2025-05-12_073_新方式開発記録自動取得の実験.md
となっており、他の開発記録のパターンである 日付-連番-development.md
と異なっていることが判明。auto_logging_guide.md
を確認したところ、ファイル名のフォーマットに関する記述が不十分だったため、「ファイル名には必ず「development」を使用し、テーマ名は含めないこと」という注意事項を追加しました。
さらに、開発記録ファイルの対話が途中までしか記録されていない問題も発覚。原因を調査した結果、自動更新の仕組みに不備があることがわかりました。とりあえず、最新の対話を手動で追記しました。
最後に、5回の対話ごとに自動保存するというルールがLLMにとって厳しい要求であると判断し、各対話後に自動的に記録を更新するように auto_logging_guide.md
を修正しました。また、自動記録がうまくいかなかった場合のバックアップとして、開発終了時に開発記録とこれまでの対話履歴を見直して、未記入分の記録を行うという指示を追加しました。
技術的なポイント
今回の開発で重要なポイントは、MCP (Managed Content Provider) を利用して、LLMに特定のディレクトリへのアクセス権限を与えることで、セキュアな環境で自動記録を実現している点です。
また、auto_logging_guide.md
を参照させることで、LLMが一貫したフォーマットで開発記録を作成できるようにしています。
所感
今回の開発では、MCPの設定ミスによるアクセス権限エラーや、ファイル名のフォーマットの不統一、対話ログの記録漏れなど、いくつかの問題に直面しました。しかし、これらの問題を一つ一つ解決していくことで、自動記録の仕組みが着実に改善されていることを実感できました。
特に、ファイル名の修正や、自動保存のルールの見直しは、今後の開発効率に大きく貢献すると感じています。
LLMとの対話を通じて、より現実的な自動記録の仕組みを構築できたことは大きな収穫でした。
今後の課題
今回の開発では、対話ログの記録漏れを完全に解決することができませんでした。今後は、自動更新の仕組みを改善し、対話ログが確実に記録されるようにする必要があります。
また、開発終了時のバックアップ処理についても、より詳細な手順を auto_logging_guide.md
に記述する必要があります。
まとめ
今日は、新方式での開発記録自動取得の実験を行い、基本的な機能が正常に動作することを確認しました。
ファイル名の修正や、自動保存のルールの見直しなど、いくつかの改善も行いました。
今後は、対話ログの記録漏れを解決し、より完成度の高い自動記録の仕組みを構築していきたいと考えています。
Discussion