diff --git a/cecli/commands/utils/base_command.py b/cecli/commands/utils/base_command.py index d9e0d4c74d2..db6006234a5 100644 --- a/cecli/commands/utils/base_command.py +++ b/cecli/commands/utils/base_command.py @@ -159,6 +159,12 @@ async def _generic_chat_command(cls, io, coder, args, edit_format, placeholder=N await new_coder.generate(user_message=user_msg, preproc=False) coder.coder_commit_hashes = new_coder.coder_commit_hashes + # Transfer files added during the /agent (or other temp-coder) turn back to the original + if new_coder.abs_fnames - original_coder.abs_fnames: + original_coder.abs_fnames.update(new_coder.abs_fnames) + if new_coder.abs_read_only_fnames - original_coder.abs_read_only_fnames: + original_coder.abs_read_only_fnames.update(new_coder.abs_read_only_fnames) + # Clear manager and restore original state ConversationService.get_manager(original_coder).initialize( reset=True,