|
1 | 1 | from logging import Logger |
2 | 2 |
|
3 | 3 | from slack_bolt import Ack |
4 | | -from slack_bolt.agent.async_agent import AsyncBoltAgent |
| 4 | +from slack_bolt.context.async_context import AsyncBoltContext |
5 | 5 | from slack_sdk.web.async_client import AsyncWebClient |
6 | 6 |
|
7 | 7 | from agent import run_casey_agent |
|
10 | 10 |
|
11 | 11 |
|
12 | 12 | async def handle_issue_submission( |
13 | | - ack: Ack, body: dict, client: AsyncWebClient, agent: AsyncBoltAgent, logger: Logger |
| 13 | + ack: Ack, |
| 14 | + body: dict, |
| 15 | + client: AsyncWebClient, |
| 16 | + context: AsyncBoltContext, |
| 17 | + logger: Logger, |
14 | 18 | ): |
15 | 19 | """Handle modal submission: open DM, post issue, and run Casey agent.""" |
16 | 20 | await ack() |
17 | 21 |
|
18 | 22 | try: |
19 | | - team_id = body["user"]["team_id"] |
20 | | - user_id = body["user"]["id"] |
| 23 | + team_id = context.team_id |
| 24 | + user_id = context.user_id |
21 | 25 | values = body["view"]["state"]["values"] |
22 | 26 | category = values["category_block"]["category_select"]["selected_option"][ |
23 | 27 | "value" |
@@ -61,7 +65,7 @@ async def handle_issue_submission( |
61 | 65 | response_text, new_session_id = await run_casey_agent(user_message) |
62 | 66 |
|
63 | 67 | # Stream the response in thread with feedback buttons |
64 | | - streamer = await agent.chat_stream( |
| 68 | + streamer = await client.chat_stream( |
65 | 69 | channel=channel_id, |
66 | 70 | recipient_team_id=team_id, |
67 | 71 | recipient_user_id=user_id, |
|
0 commit comments