camelAI Documentation

Guides

Publish, versions, and your bot's page

Publish a bot, add it to Discord, roll back to an earlier version, and manage it from its page or from Discord

camel-builder writes, checks, and saves your bot's changes. It never publishes, rolls back, or deletes a bot on its own. Each of those waits for you to select a button.

Publish

Each publish makes a new version from the bot's saved code and puts it live. Changes camel-builder hasn't saved yet aren't in it. You can publish in any of these ways:

  • The publish card. After camel-builder saves a change, the chat shows a card such as Publish @mochi as version 2? with the files that changed. Select Publish v2, or Not now.
  • Ask camel-builder. Say "publish it". camel-builder shows a card such as Publish mochi's changes? that says what will happen. Nothing changes until you select Publish.
  • Publish changes on the bot page. Once the bot is in Discord, the header shows Publish changes with the number of unpublished changes. A message then offers Undo, which goes back to the version that ran before.
  • Add to Discord. Adding a bot to Discord for the first time also publishes it.

Add to Discord

After the first publish, the chat asks @mochi is published. Add it to Discord?

1

Select Add to Discord

Discord's own screen opens in a new tab.

2

Pick the server and the channel

Pick them on Discord's screen and approve. You need the Manage Server permission in that server.

3

Wait for the card to update

The card shows Waiting for Discord… and goes away once the bot is in the channel.

The bot page's header has Add to Discord too, ready once camel-builder gives the bot a command. The test channel's Add to Discord and the Channels tab's Add a channel open a dialog in camelBot instead. Choose a Server and a Channel, then select Add mochi to #dice-tower (with your bot's and channel's names). If camel isn't in that server yet, select Install in followed by the server's name first. Discord asks you to approve, then brings you back.

Bots work in text and announcement channels, and in the threads inside them. Forum and voice channels don't work with bots yet. A bot on your own Discord app adds to a server a little differently. See Your own Discord app.

The bot page

Select a bot in the list on the left, or Dashboard in its test channel, to open its page. Under its name you see its status and when it was last used. Build opens the chat with @mochi in the message box and the bot's test channel beside it.

StatusWhat it means
DraftIt isn't published yet
Live in #dice-towerIt's published and answering there. +2 means 2 more channels
PausedIt ignores messages and commands until you resume it
Unpublished changesIts saved code has changes that aren't live
Needs a new tokenIts own Discord app needs a new bot token
Discord app turned offIts own Discord app is turned off
Not answering in #tavernIts own Discord app isn't in that channel's server yet

When something stops the bot from answering, a notice above the tabs says what happened, with a button that fixes it. A paused bot has Resume. A bot on your own app may have Paste a new token, Switch app, or Add to server.

Activity

Activity lists what the bot did in Discord, newest first, as it happens, such as "kit used /mochi roll in #dice-tower". Last 24 hours above the tabs counts its uses.

A failed event reads like "Failed on /mochi roll for kit in #dice-tower" and has two buttons:

  • Ask camel-builder to fix opens the chat with a request in the message box, such as "@mochi the roll command is failing, can you fix it?". Add detail if you like, and send it.
  • Details shows the error and what the bot logged while it ran.

When there are failures, a chip such as 2 problems above the list shows only those.

Versions and rollback

The Versions tab appears once a bot has two versions. Each row shows the version's number, its commands, and its date. Live marks the version running in Discord, and Not published marks newer ones. Publishing and rolling back from this tab work once the bot is in Discord.

  • Publish on a newer version puts it live.
  • Roll back on an older version asks you to confirm, with the note "Discord switches to version 2's code now, as a new version. Saved data stays." Select Roll back again to confirm.

A rollback adds a new version made from the older version's code, so the list keeps every version. The bot's saved data stays as it is, and only the code goes back. The older code also becomes the saved code that camel-builder works from, so unpublished changes are replaced.

You can also ask camel-builder to go back, such as "put mochi back to version 2". It shows a card such as Go back to v2?, and the bot changes only when you select Go back to v2.

Channels

The Channels tab lists each channel the bot is in, with Open in Discord, and an × that removes the bot from that channel. Add a channel adds it to another one. How people use it shows the ways people can reach the bot, such as its commands and starting a message with its name.

Settings

  • Discord app. The app the bot replies as. Change switches it between Camel's app and your own apps. See Your own Discord app.
  • Name. On Camel's app the name is also the command, so it's lowercase. On your own app, a new name changes it in Discord too.
  • Picture. The bot's picture in camelBot. On your own app, it changes in Discord too.
  • Look in Discord. On Camel's app, set the name, picture, banner, and About me for its server profile. Each server shares the first-added profiled bot's look. See Name, picture, and profile.
  • Pause, download or delete opens three more settings:
    • Pause. "Stop answering in Discord for now. Nothing is lost." A paused bot ignores messages and commands, and its schedules don't run. Turn the switch off, or select Resume in the notice, to start it again.
    • Download its data. "A copy of everything mochi has saved." Select Download.
    • Delete bot. Removes the bot from Discord and erases its versions and data for good. The dialog offers Download a copy first, then asks you to type the bot's name and select Delete mochi. This can't be undone.

Build from Discord

You can build and change bots without leaving Discord. Run /camel create in a server where camel is, or anywhere once you add camel to your Discord apps.

/camel create idea:Roll dice for our D&D group, with a button to roll again

The idea is optional. camel answers with a link to your DMs, where camel-builder starts on your idea or asks what the bot should do. It's the same conversation as the chat on the web, so you can switch between the two. Cards to publish, roll back, or delete a bot show in your DMs with their buttons. Some steps, such as pasting a bot token, open in your browser.

If camel can't DM you, it says so. Allow direct messages from the server's members in Discord's Privacy Settings, or add camel to your apps, then run the command again.

After /camel create, your DMs with camel go to camel-builder. Once you use one of your bots' commands, your DMs with camel go to that bot instead. Reply to one of camel-builder's messages, or run /camel create again, to talk to camel-builder.

Two more commands put bots in channels from Discord:

CommandWhat it does
/camel add bot:Adds one of your bots to the channel you're in. It publishes the bot first if it isn't published yet
/camel remove bot:Removes a bot made with camelBot from the channel you're in, whoever made it

Both need the Manage Server or Manage Channels permission in that server.