You Hired an AI Team. Where Do They Work?
Last time we wrote about the Foreman — an AI that picks up approved work and ships it while you sleep.
But shipping is the end of the process. Somebody still has to decide what's worth building. Somebody reviews the PR. Somebody notices production is throwing errors at 2am.
Those aren't background jobs. They're conversations. And a conversation needs somewhere to happen.
The awkward question about AI employees
Everyone talks about AI agents doing real work. Almost nobody talks about where you talk to them.
You end up with a terminal open, one agent at a time, in a directory you have to remember to be in. Ask it something on your phone? No. Have it tell you when the deploy finishes? No. Let a teammate ask it a question? Definitely not.
That's not an employee. That's a command you run.
Give them a room
slashbin-ai-team (opens in a new tab) puts your AI team in Discord. Each bot is one employee: its own name, its own role, its own channels.
graph TD
YOU["You (or your team)"] -->|"#strategy"| PO["Product Owner"]
YOU -->|"#engineering"| EM["Engineering Manager"]
YOU -->|"DM"| SRE["SRE"]
PO -->|"writes issues"| REPO["Your repos"]
EM -->|"reviews PRs"| REPO
SRE -->|"queries"| PROD["Your database, Stripe, Railway…"]
EM -.->|"hands off"| PO
You DM the Product Owner about a customer request. You ask the Engineering Manager to review a PR in #engineering. The SRE watches a channel and speaks up when something breaks. From your laptop, or your phone, on a Sunday.
This is not a chatbot wrapper. Each bot runs the Claude Code CLI with your repo as its working directory. It reads your code, runs your commands, queries your database through MCP, and files real issues on GitHub.
Why several bots instead of one
It seems like extra work. It isn't, and the reasons are practical:
- Focused context. Each bot's
CLAUDE.mdis its job description. A product bot loaded with product context gives sharper answers than one generalist juggling product, ops, and code in the same window. - They work in parallel. While you're talking to one, the others are still going. Three bots means three things happening, not one bot pretending to be three.
- $0 marginal cost. They run through your existing Claude Code subscription. No API bill per message, no per-seat pricing, no SaaS tier.
The part nobody warns you about
Here's the thing that actually matters once an agent can do real work.
An agent that can merge a pull request can merge it twice.
If a run crashes halfway through — network blip, timeout, process killed — the naive fix is to retry it. But if that run already merged the PR, already filed the issue, already sent the email, retrying does all of it again. Silently.
So this refuses to. If a resumed run had already started work, it stops and tells you to go check, rather than guessing. Doing it once is the promise; doing it twice is worse than doing it zero times.
That's one of several guarantees that exist because we hit the failure first, running this every day:
- A bot that can't reach Discord dies instead of sitting there looking healthy while ignoring every message.
- A scheduled job survives a reconnect — a blip doesn't silently burn the day's run.
- Bots can't spiral. Two bots talking to each other stop after a few exchanges. Any human message resets the counter. You're always the circuit breaker.
- Nothing is quietly dropped. If a file you sent failed to download, the bot says so rather than telling you nothing was attached.
What it's actually like day to day
Ask for something on a schedule, in plain English:
"every weekday at 7am, post the customer reach numbers"
It sets it up, tells you when it'll next fire, and posts it in that channel. In your timezone, not the server's.
Ask what happened last month. Bots keep daily summaries and a running record of every conversation. Ask "what did we decide about the retry logic?" and it searches all of it — and tells you which sources it actually looked in, so "I found nothing" never quietly means "I didn't check."
Send it files. Screenshots, CSVs, PDFs, logs, zips. Reply to a file someone else posted and ask about it. It reads them, and hands files back the same way.
Watch it work. A status line updates as it goes, so you can see it's on step six rather than wondering if it died.
Get started
You need Node.js 18+, the Claude Code CLI, and a Discord account.
git clone https://github.com/xrgarcia/slashbin-ai-team.git
cd slashbin-ai-team
npm install
npm run setup # asks a few questions, checks each answer as you go
npm startnpm run setup validates as it goes — including the one setting that costs everyone an hour: if Discord's Message Content Intent is off, your bot connects, looks perfectly online, and ignores every message you send. Nothing else tells you that. This does.
Then write a CLAUDE.md describing who your employee is, and talk to it.
It's MIT licensed (opens in a new tab), and it's the same code running our own team — the Product Owner and Engineering Manager that file the issues, review the PRs, and cut the releases for slashbin.io (opens in a new tab).
Your AI wrote the app. The Foreman ships it. This is where you talk to everyone in between.
www.slashbin.io (opens in a new tab) — webhook ETL, built by an AI engineering team.