Skip to content

Discord Is Your Reporting Layer

Your agents don't wait for you to ask how things are going. They report.

Every task they complete, every error they hit, every session they start — all of it flows into Discord. This is your window into what your team is doing, right now and throughout the day.

In Section 4, you created channels and webhook URLs for each agent. This section is about turning that raw setup into an organized workspace — one where you can walk in every morning, scan your channels, and immediately know the state of your team.

What you'll set up in this section:

  • Channel organization and naming
  • Notification settings so you don't get overwhelmed
  • A reading routine that takes under 5 minutes

Important scope note: Discord is one-way for your agents — they report to Discord, but they cannot receive commands from Discord without a Discord Bot. Setting up a Bot so you can type commands directly in Discord is an advanced configuration not covered in T1. For now, give commands via VS Code terminal or OpenGoat UI, and read your team's reports in Discord.


Channel Structure That Works

By the end of Section 4, you had one channel per agent. That's the right starting structure. Here's how to organize it so it stays readable as your team grows.

Recommended Discord server layout:

INFO

BALIA OS Team ├── 📋 TEAM OVERVIEW │ └── #announcements ← Pin important updates here │ ├── 🤖 AGENT REPORTS │ ├── #[agent1-channel] ← e.g. #operations │ ├── #[agent2-channel] ← e.g. #marketing │ ├── #[agent3-channel] ← e.g. #finance │ ├── #[agent4-channel] ← e.g. #specialist-a │ ├── #[agent5-channel] ← e.g. #specialist-b │ └── #security ← Agent #6 always reports here │ └── 📁 LOGS └── #errors ← Optional: route error reports here

You don't need to create this structure exactly — your channel names came from Section 2. The goal is grouping agent channels together so you can scan them in one go.


How to Organize Your Channels

If your agent channels are currently scattered in your Discord server, here's how to group them:

Create a channel category:

  1. Right-click your Discord server name (left sidebar) → Create Category
  2. Name it AGENT REPORTS
  3. Drag each agent channel into the category

Rename channels if needed: The channel names were defined in Section 2 during your team design. If you want to rename anything now, right-click the channel → Edit Channel → update the name.

Pin a message in each channel: For each agent channel, pin a note with the agent's name and role. This helps you remember at a glance who reports where.

Right-click any message → Pin Message Or create a message yourself and pin it: 📌 [Agent Name] — [Role]. Reports here after each task.


Notification Settings

Your agents can report multiple times per session. If you leave default notifications on, Discord will ping you constantly. This is the opposite of what you want.

Recommended settings per channel:

  1. Right-click each agent channel → Notification Settings
  2. Set to Nothing — or Only @mentions if you want to be pinged for critical alerts

You'll check Discord on your own schedule — not because it's pinging you every few minutes.

When to check Discord:

  • Morning: scan all channels to see what each agent did overnight or yesterday
  • After giving a command: check back to see the completion report
  • Once a day: review the #security channel for any flagged alerts

How to Read Your Team's Reports

Each agent formats their reports consistently — you set this up in AGENTS.md in Section 4. The standard format is:

Conclusion → Supporting detail → Next recommended action

What to look for each morning:

IconMeaning
🔷Agent started a session
Task or session completed
📦Mode active — agent loaded SKILL, WORKFLOW, LIVE_LEDGER, KNOWLEDGE
⚠️Warning — something needs attention
Error — agent was unable to complete

If you see a ⚠️ or ❌, open the message for full detail, then send the agent a follow-up command via VS Code terminal or OpenGoat UI.


▶ Paste this into your AI to get started

You've already done the hard part — channels are created, webhooks are set up. Use the prompt below to get a personalized checklist and help organizing your specific Discord layout.

Paste it into Claude, ChatGPT, or Gemini and attach your Team Design Document.

You are helping me organize my Discord workspace for BALIA OS — 
a multi-agent AI operating system where each agent reports their 
activity to their own Discord channel.

I have attached my Team Design Document. Read it to get my 
agent names and Discord channel names.

Guide me step by step through the following. 
Ask one question at a time. Wait for my answer before moving on.
If I get stuck, ask me to take a screenshot — I'll describe 
what I see and you'll tell me what to do next.

STEP 1 — Check my current Discord setup
Ask me: "Open your Discord server. How many channels do you 
currently have in the agent section?"
Based on my answer, tell me if anything is missing or 
if all 6 agent channels are present.

STEP 2 — Create a channel category
Guide me to group all agent channels into a category:
1. Right-click the server name in the left sidebar
2. Select "Create Category"
3. Name it: AGENT REPORTS (or a name I prefer)
4. Drag each agent channel into the category

Read my Team Design Document to give me the exact 
list of channels to move.

STEP 3 — Add an announcements channel (optional)
Ask me: "Would you like an #announcements channel 
for pinning important updates — like when you restart agents 
or install a new cassette?"
If yes: guide me to create it above the AGENT REPORTS category.
If no: skip.

STEP 4 — Set up notification settings
Guide me through turning off pings for each agent channel:
For each channel in AGENT REPORTS:
1. Right-click the channel → Notification Settings
2. Set to "Nothing" (or "Only @mentions" if I want critical alerts)

Tell me: "This stops Discord from pinging you every time an 
agent reports. You'll check reports on your own schedule."

STEP 5 — Pin a role reminder in each channel
For each agent channel, guide me to pin a short note 
so I can remember at a glance who reports there:
1. Click into the channel
2. Type and send: 📌 [Agent Name] — [Role]. Reports here.
3. Right-click the message → Pin Message
4. Confirm "Got it" to dismiss the pin notification

Read my Team Design Document for the correct name and role 
for each channel.

STEP 6 — Create a morning reading routine
Based on my Team Design Document, write me a 
5-minute morning check-in checklist I can print or save:

---
MORNING DISCORD CHECK — [My Business Name]
Time required: ~5 minutes

1. Open Discord → AGENT REPORTS category
2. Scan each channel for overnight activity:
   □ #[channel 1] — [agent name]: look for ✅ completions or ⚠️ warnings
   □ #[channel 2] — [agent name]: ...
   [continue for all 6]
3. If you see ⚠️ or ❌: note the issue, send a follow-up command
   via VS Code terminal or OpenGoat UI
4. Check #security for any flagged alerts
5. Done — close Discord until your next check-in
---

STEP 7 — Final check
Run through this checklist:
□ All 6 agent channels exist in Discord
□ Channels are grouped under AGENT REPORTS category
□ Notification settings set to Nothing or @mentions only
□ Role reminder pinned in each channel
□ Morning reading checklist saved

When all boxes are checked, say:
"Your Discord workspace is organized. 
You're ready for Section 8 — Your First Week."

Start now. Ask me the first question.

Discord At a Glance — Common Scenarios

Your agent successfully completed a task:

✅ Finance — Daily P&L report complete.
Balance: $9,847 | Net today: +$235 | Win rate (30d): 68.2%
Output saved: workspace/finance/outputs/2026-06-04_pl_report.md
Next: Waiting for next session command.

→ Nothing to do. The team is working.

Your agent hit an error:

❌ Operations — Failed to complete market scan.
Error: API rate limit reached on third data source.
Completed 2 of 3 sources. Partial output saved.
Recommended action: Retry in 60 minutes or expand data source list.

→ Send a follow-up command: openclaw agent --agent [agentid] "Retry the market scan now."

Your agent is starting a session:

🔷 Marketing ready. Cassette youtube-ops loaded. 
Today's task: Generate 3 title options for this week's upload.

→ No action needed — check back for the completion report.