# Krilliam Discord Setup Handoff for Codex
You are helping Jorge set up a private Discord server for Hermes Agent gateway access.
## Goal
Create/configure a Discord server and Discord bot so Jorge can run his default Hermes Agent profile, “Krilliam”, from Discord. This should work like a private agent-ops server where Jorge can later deploy additional agents/profiles. Start only with Krilliam/default.
## Constraints
- Use browser/computer-use to click around Discord and the Discord Developer Portal as needed.
- Do not paste bot tokens or secrets into chat output.
- If you generate or view a token, store it only in the local Hermes env/config when needed, or ask Jorge to paste it manually into the setup prompt.
- Do not commit secrets to git.
- Do not modify unrelated project files.
- This is a local machine / Hermes setup, not a SuperaSEO code task.
- Jorge is on macOS.
- Hermes config is under `~/.hermes`.
- Active/default Hermes profile is Krilliam.
- Do not create Dante, Orión, Toby, or other bots/profiles yet.
- Do not change model/provider unless Hermes gateway fails because of auth.
- Do not edit Hermes source code.
## 1. Discord server
Create or help Jorge create a private Discord server:
Suggested server name: `Hermes Ops`
Create these text channels if possible:
- `#krilliam`
- `#agent-runs`
- `#cron-reports`
Optional if simple:
- voice channel: `Agent Voice`
## 2. Discord application/bot
Go to:
https://discord.com/developers/applications
Create a new application/bot named:
`Krilliam`
In Bot settings:
- Enable Message Content Intent.
- Enable Server Members Intent if available/needed.
- Presence Intent is optional.
- Keep token secret.
## 3. OAuth invite
Generate an OAuth2 invite URL with scopes:
- `bot`
- `applications.commands`
Bot permissions:
- View Channels
- Send Messages
- Read Message History
- Use Slash Commands
- Attach Files
- Add Reactions
- Create Public Threads
- Send Messages in Threads
- Manage Threads optional
- Connect/Speak optional if voice is enabled
Invite the bot into the `Hermes Ops` server.
## 4. Hermes Discord gateway config
Use the Hermes CLI wizard:
```bash
hermes gateway setup
```
Select/configure Discord.
If the wizard asks for the Discord bot token, paste it there. If you cannot safely paste it, stop and ask Jorge to paste it manually.
After setup, verify paths:
```bash
hermes config path
hermes config env-path
```
Do not print the token. File paths are safe to print.
## 5. Enable/check Hermes toolsets
Run:
```bash
hermes tools list
```
If possible, ensure these toolsets are enabled for gateway/Discord usage:
- terminal
- file
- web
- browser
- vision
- cronjob
- delegation
- session_search
- memory
- skills
- clarify
- messaging
- tts optional
If Hermes requires interactive tool config, run:
```bash
hermes tools
```
Make the best safe choices for a private ops Discord bot.
## 6. Start/restart gateway
Run:
```bash
hermes gateway install
hermes gateway start
hermes gateway status
```
If already installed, use:
```bash
hermes gateway restart
hermes gateway status
```
Inspect logs if needed:
```bash
tail -100 ~/.hermes/logs/gateway.log
```
## 7. Discord smoke test
In Discord, in `#krilliam`:
- Send `/status` if slash commands are available.
- Send `/sethome` to set this chat as the home channel.
- Send a normal message: `Krilliam, reply with your active profile and one-line status.`
Verify the bot responds.
## 8. Voice/STT optional
If Jorge wants voice notes working now, check whether STT is enabled:
```bash
hermes config | grep -i stt -A 10
```
If local transcription is not installed and it is safe to install, run:
```bash
pip install faster-whisper
hermes config set stt.enabled true
hermes config set stt.provider local
```
Then restart:
```bash
hermes gateway restart
```
If install fails, report the error.
## 9. Handoff output required
Return a concise handoff for Krilliam with this exact structure:
```text
DISCORD_SETUP_STATUS:
- Server created: yes/no
- Server name:
- Channels created:
- Bot application created: yes/no
- Bot name:
- Bot invited to server: yes/no
- Message Content Intent enabled: yes/no
- Slash commands working: yes/no/unknown
- Bot responded in Discord: yes/no
- /sethome completed in #krilliam: yes/no
HERMES_STATUS:
- hermes binary path:
- hermes version:
- config path:
- env path:
- gateway installed: yes/no
- gateway running: yes/no
- gateway status output summary:
- relevant gateway log errors, if any:
TOOLSETS:
- enabled/available toolsets observed:
- missing desired toolsets, if any:
VOICE_STATUS:
- STT enabled: yes/no/unknown
- STT provider:
- faster-whisper installed: yes/no/unknown
- Discord voice configured: yes/no/unknown
SECRETS:
- Discord token stored in Hermes env/config: yes/no/unknown
- Token was exposed in chat/log output: yes/no
Do not include the token.
NEXT_ACTIONS_FOR_KRILLIAM:
- List only what Krilliam/Jorge still needs to do.
```
## Final instruction
After completing the setup, give Jorge only the handoff output above. Do not include secrets. If blocked, include the exact blocker under `NEXT_ACTIONS_FOR_KRILLIAM`.