Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhancement: Custom Commands #39

Open
JacobCoffee opened this issue Nov 30, 2023 · 0 comments
Open

Enhancement: Custom Commands #39

JacobCoffee opened this issue Nov 30, 2023 · 0 comments
Labels
byte 🤖 Related to the Byte bot service database 📦 Related to the Byte database service enhancement ➕ This is a brand new feature or request web 🌐 Related to the Byte web service

Comments

@JacobCoffee
Copy link
Owner

JacobCoffee commented Nov 30, 2023

Summary

#38 presents a good first use case for this, because it kind've seems like that wouldn't be useful for all guilds.

Guilds should have the capability to create unique-to-guild custom commands that only apply to them.
This would be managed, eventually, by some web UI dashboard.

Basic Example

Guilds can create custom commands in some eventual dashboard

  1. Visit dashboard
  2. "Create custom command"
  3. Add new command to do thing

Drawbacks and Impact

Maybe #38 is useful for all guilds, and having it as a feature will encourage these repositores/libraries to make more awesome-$thing repos.

Unresolved questions

Could we allow creation and management of custom commands via Discord UI. Maybe by allowing (advanced) users to send markdown blocks of their Python code?

  1. User: byte new command
  2. Byte: Reply to me with what it is, ill see if its valid and we can test it
  3. User:
@command(
        name="ping",
        help="Run `!ping` or `!p` to get a `pong!` response.",
        aliases=["p"],
        brief="Run `!ping` or `!p` to get a `pong!` response.",
        description="Ping the bot.",
    )
    async def ping(self, ctx: Context) -> None:
        """Responds with 'pong'."""
        await ctx.send(f"pong to the {ctx.guild.name} guild!")
  1. Byte: Test/validate -> place it into a class CustomCommands(Cog) that is loaded only for that guild (❓)

Or, for 3, maybe we can just abstract much of this with something like
/newcmd name="ping" help="do the roar" aliases="p" action="send('hello world')"


Note

We utilize Polar.sh to engage in regular as well as pledge-based > sponsorship.

Check out all issues funded or available for funding on our Polar.sh dashboard

  • If you would like to see an issue prioritized, make a pledge towards it!
  • We receive the pledge once the issue is completed & verified
  • This, along with engagement in the community, helps us know which features are a priority to our users.
Fund with Polar
@JacobCoffee JacobCoffee added byte 🤖 Related to the Byte bot service web 🌐 Related to the Byte web service database 📦 Related to the Byte database service enhancement ➕ This is a brand new feature or request labels Nov 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
byte 🤖 Related to the Byte bot service database 📦 Related to the Byte database service enhancement ➕ This is a brand new feature or request web 🌐 Related to the Byte web service
Projects
None yet
Development

No branches or pull requests

1 participant