Kotoba

Where to start

What Kotoba isWho she is and where she runs, in one page
InstallingOne package, two commands
First runA key, a model, her first words
The approval gateHow she asks before she acts
The two voice modesLocal voice, or the agent tunnel
The soul fileChange who she is
RoadmapWhat grows next, and what was cut on purpose

Or a section

↑↓ move openesc close124 pages
All pages

Discord1 of 10

Kotoba on Discord

About 2 minutes to read

On this page

Discord is one of her front doors. The bot, the terminal and the web app run the same engine, read the same database and use the same workspace. What Discord changes is who is allowed to ask her for what, and how she writes: a room of several people, in public, with no screen to draw on.

What it is

kotoba discord is a separate process. It connects to the Discord gateway, and for every channel it answers in it opens one conversation on the shared engine.

  • A channel is a conversation. The session id is derived from the server id and the channel id, hashed, so the same channel keeps its history across a restart of the bot. A DM gets its own id.
  • Everyone in a channel shares that conversation. One session holds every person's turns in that channel, so she reads what other people said there when she answers you.
  • She uses ordinary messages. She registers no slash commands — there is no application-command tree anywhere in the code — so you talk to her by naming her, replying to her, or writing in a channel you have marked as hers.
  • She does not answer everything. In a server she answers when she is named, when you reply to her, in the channels you nominate, and for a short window after she just answered you. See When she answers.

What it is not

  • It has no clock. This process starts no cron ticker on purpose. Reminders asked for in a channel do not ring in that channel; she says so when she sets one. See Honest limits.
  • It draws no panels. A Discord message and an approval card with two buttons are the only things she can put on screen here. There is no task list, no progress view, no file tree.
  • It is not a second identity. Her memory of you, her files and her terminal belong to one account — the owner id you configure. Everybody else in the server reaches a much smaller set of tools, by design.

What you need

ForRequirement
TextA bot application and token, the discord extra, two privileged intents
VoiceAlso the voice extra, an ElevenLabs key, and libopus on Linux and macOS
Acting on your machine (shell, files, code)KOTOBA_DISCORD_OWNER_ID set to your own Discord user id
Reshaping a serverDiscord's Administrator permission on the person asking, and the matching permissions on her

Start with Setting her up on Discord.