otto8-ai / otto8

Open source AI Agent Platform
Apache License 2.0
12 stars 9 forks source link

Do not allow to enter existing handle for agents when publishing urls. #495

Open sangee2004 opened 1 week ago

sangee2004 commented 1 week ago

Steps to reproduce the problem:

  1. Create an agent say agent1 and publish it by entering the handle name as say "testagent"
  2. Create another agent say agent2 and publish it by entering the same handle name as "testagent" . This generates the same publish url as from step1.

When following the link to the publish url , user is always presented with chatting with agent1

Expected Result: We should not allow for entering handle names (when publishing urls) to be the same as one that is already associated with another agent.

cjellick commented 1 week ago

We are not going to disallow this. We allow this so that we can support a scenario where I can publish agent1 at /testagent and then basically "prep" agent2 and get it ready to swap over to /testagent by setting that value, and then unpublish agent1 to allow agent2 to swap over.

We explain this in the modal Image

@ryanhopperlowe the bug that needs fixed here is that we should not show the URL for the agent if it isn't published. We should instead show text that says "Publish URL alias currently in use by another agent." Picture for reference about what URL im talking about:

Image

You can decide what to show based off the refNameAssigned in the agent's api:

{
  "id": "a1j7g8q",
  "created": "2024-11-08T23:44:48Z",
  "links": {
    "invoke": "http://test.otto8.ai/api/invoke/zzz"
  },
  "name": "Outrageous Monkey",
  "description": "",
  "temperature": null,
  "cache": null,
  "refName": "zzz",
  "prompt": "",
  "knowledgeDescription": "",
  "agents": null,
  "tools": null,
  "availableThreadTools": null,
  "defaultThreadTools": null,
  "oauthApps": null,
  "maxThreadTools": 0,
  "refNameAssigned": true
}

If thats set to true, show the url. if its set to false, show the text.

While youre in there, can you make click the URL open a new browser tab and just if you click the copy board it copies it?