Skip to content

Commit 8b06713

Browse files
codegen-sh[bot]codegen-bot
and
codegen-bot
authored
fix: IndexError in CodeAgent.run method when message.content is empty (#821)
## Description This PR fixes an IndexError that occurs in the `CodeAgent.run()` method when handling AI messages with empty content lists. ### Problem The error occurs when trying to access `message.content[0]` but `message.content` is an empty list: ``` IndexError: list index out of range ``` ### Stack Trace ``` File "/root/app/modal_app/gen/slack/handlers.py", line 46, in handle_app_mention agent.run(prompt) File "/usr/local/lib/python3.12/site-packages/codegen/agents/code_agent.py", line 123, in run if isinstance(message, AIMessage) and isinstance(message.content, list) and "text" in message.content[0]: ~~~~~~~~~~~~~~~^^^ ``` ### Solution Added a check to verify that `message.content` is not empty before trying to access its first element: ```python if isinstance(message, AIMessage) and isinstance(message.content, list) and len(message.content) > 0 and "text" in message.content[0]: ``` This prevents the IndexError when `message.content` is an empty list. ### Testing This fix should prevent the IndexError when the CodeAgent receives an AIMessage with an empty content list. Co-authored-by: codegen-bot <[email protected]>
1 parent 58614c1 commit 8b06713

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

src/codegen/agents/code_agent.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ def run(self, prompt: str, thread_id: Optional[str] = None) -> str:
120120
if isinstance(message, tuple):
121121
print(message)
122122
else:
123-
if isinstance(message, AIMessage) and isinstance(message.content, list) and "text" in message.content[0]:
123+
if isinstance(message, AIMessage) and isinstance(message.content, list) and len(message.content) > 0 and "text" in message.content[0]:
124124
AIMessage(message.content[0]["text"]).pretty_print()
125125
else:
126126
message.pretty_print()

0 commit comments

Comments
 (0)