danny-avila / LibreChat

Enhanced ChatGPT Clone: Features Anthropic, AWS, OpenAI, Assistants API, Azure, Groq, o1, GPT-4o, Mistral, OpenRouter, Vertex AI, Gemini, Artifacts, AI model switching, message search, langchain, DALL-E-3, ChatGPT Plugins, OpenAI Functions, Secure Multi-User System, Presets, completely open-source for self-hosting. Actively in public development.
https://librechat.ai/
MIT License
19.34k stars 3.23k forks source link

🤖 fix: Collaborative Agents are only editable by ADMIN #4659

Open leon-juenemann opened 2 weeks ago

leon-juenemann commented 2 weeks ago

Summary

I expect users to be able to edit Agents, that are set to "Allow other users to edit your agent" (collaborative). Currently only the ADMIN can do this. I know Agents are still in development. Hopefully contributions are still possible. Sharing/Editing Agents is very useful to me.

Change Type

Testing

  1. Create an Agent.
  2. Set the "Share to all users" and "Allow other users to edit your agent" option
  3. Try to edit the Agent on an account that is not ADMIN
  4. You get an error.

Test Configuration:

You need to configure Librechat to use the new Agents! See: https://github.com/danny-avila/LibreChat/issues/3607

Add to .env: ENDPOINTS=agents EXPERIMENTAL_AGENTS=true

Checklist

Please delete any irrelevant options.

rio100 commented 2 weeks ago

Thinking out loud here:

On #2, if all have access to edit an agent made public, I find it would be difficult to control what the agent will do for all. I suggest an offer to copy/clone the agent for each user's profile. This way they can just have the snapshot and then if it gets updated by the author, they get a new offer and decide to copy/clone and/or reshare as their own to offer.

leon-juenemann commented 2 weeks ago

Thinking out loud here:

On #2, if all have access to edit an agent made public, I find it would be difficult to control what the agent will do for all. I suggest an offer to copy/clone the agent for each user's profile. This way they can just have the snapshot and then if it gets updated by the author, they get a new offer and decide to copy/clone and/or reshare as their own to offer.

Makes sense. We could change the "Save" button to "Create Copy" for collaborative agents and change the toggle to "Allow other users to copy your agent".

Although the feature still does not feel very useful to me. I feel like the import part is that the user can see the "implementation" of the public agent. Then he can chose to create his own copy of the agent by simply copying the prompt, actions, etc.

Can @danny-avila comment on what you had in mind for this feature?

danny-avila commented 8 hours ago

@leon-juenemann

I think your implementation is more aligned to what I had in mind. Though I will second that a "clone" feature is in order

This exact implementation may change but is fine for now