diff --git a/aider/commands.py b/aider/commands.py index 3881403c5c1..06d6d7572c4 100644 --- a/aider/commands.py +++ b/aider/commands.py @@ -1132,16 +1132,25 @@ def cmd_help(self, args): self.io.tool_error("Unable to initialize interactive help.") return - self.help = Help() + try: + self.help = Help() + except (RuntimeError, OSError, Exception) as err: + self.io.tool_error(f"Unable to initialize interactive help: {err}") + return + + try: + coder = Coder.create( + io=self.io, + from_coder=self.coder, + edit_format="help", + summarize_from_coder=False, + map_tokens=512, + map_mul_no_files=1, + ) + except Exception as err: + self.io.tool_error(f"Unable to initialize help coder: {err}") + return - coder = Coder.create( - io=self.io, - from_coder=self.coder, - edit_format="help", - summarize_from_coder=False, - map_tokens=512, - map_mul_no_files=1, - ) user_msg = self.help.ask(args) user_msg += """ # Announcement lines from when this session of aider was launched: @@ -1149,7 +1158,11 @@ def cmd_help(self, args): """ user_msg += "\n".join(self.coder.get_announcements()) + "\n" - coder.run(user_msg, preproc=False) + try: + coder.run(user_msg, preproc=False) + except Exception as err: + self.io.tool_error(f"Error running help: {err}") + return if self.coder.repo_map: map_tokens = self.coder.repo_map.max_map_tokens