feat(chat): support chat resources, implement chat-based remote discovery via resource messages
This commit is contained in:
1 parent
da1420d04b
commit
30afcf2803
10 files changed
+142
-85
No files matched your search
@@ -85,11 +85,19 @@ class Agent:
|
||||
chat_view = await self.app.get_chat_view(message.chat_id)
|
||||
thread = chat_view.get_thread(message.thread_id)
|
||||
|
||||
remotes = []
|
||||
messages = []
|
||||
for msg in thread.messages:
|
||||
role = self._role_for_message(msg)
|
||||
messages.append({"role": role, "content": msg.content})
|
||||
|
||||
for msg in thread.resources:
|
||||
# Remote declarations: content is the remote name
|
||||
if msg.subkind == 'remote':
|
||||
name = msg.content
|
||||
if (self.user_id, name) in self.app.remotes and name not in remotes:
|
||||
remotes.append(name)
|
||||
|
||||
run = AgentRun.create(
|
||||
self.app,
|
||||
agent_id=self.id,
|
||||
@@ -98,6 +106,7 @@ class Agent:
|
||||
"messages": messages,
|
||||
"chat_id": message.chat_id,
|
||||
"thread_id": message.thread_id,
|
||||
"remotes": remotes,
|
||||
},
|
||||
)
|
||||
|
||||
|
||||
Reference in new issue
Block a user