self-build · the wild one

She builds her own features

Type /order add a dad-joke command and Tootsies writes the code, opens the pull request, and ships it to herself. A mod describes it; she does the rest.

The one idea: Tootsies is a Discord bot who can order new features for herself. A mod types what they want. Minutes later, real code lands in the real codebase. She builds herself.
💬 /order mod types it 📝 GitHub issue filed 🤖 AI writes the PR CI runs tests pass 🚀 deploys live bot 🔔 she pings you when live a mod describes what they want → Tootsies ships it → you hear about it minutes, not weeks
The full self-build pipeline — from a Discord message to a live feature, end to end.

The pipeline, step by step

what actually happens

When a mod types /order add a dad-joke command, Tootsies runs a pre-flight check, then files a GitHub issue with the spec. A coding AI agent picks it up, writes the actual code and tests, opens a pull request, and CI runs the test suite. A human reviews and merges — then Railway deploys automatically. The moment she’s live with the new feature, she posts back in the channel that filed the order, tagging whoever asked.

1 Mod types /order add a dad-joke command Tootsies runs a pre-flight: is this allowed? Is the kitchen open? Under the in-flight cap? 2 GitHub issue filed automatically The spec becomes a tracked issue with label "order". Order status: Prepping → On the stove. 3 AI coding agent reads the issue, writes the PR Real code, real tests, in the real repo. CI runs the full suite automatically. 4 Human reviews & merges → Railway deploys A real person merges the PR. The bot redeploys in seconds. Order flips to: Served. 5 Tootsies pings the person who filed it: "it’s live" Back in the same channel. One message closing the loop.
Every order is tracked as a GitHub issue, so nothing gets lost and you can see exactly where it is.

The guardrails

what keeps it safe

She can build almost anything — but not anything. A few hard limits keep the system trustworthy.

Pre-flight check Refused automatically if · kitchen is closed · too many in-flight · per-user cooldown active · touches protected paths no code runs on a refused order Human always merges The AI writes; a person ships The PR is reviewed before anything goes live. Tootsies cannot merge her own code. human stays the backstop She can’t touch herself Some paths are off-limits · her core voice & rules · deploy config · database connection · boot logic she can’t rewrite her constitution
The AI writes; a human ships. She can build new commands, new integrations, new surfaces — just not the load-bearing walls.

Regulars can help too

you don’t have to be a mod

You don’t need slash-command access to improve the bot. If something’s broken, just @mention Tootsie's and describe the bug. She’ll file a fix-order on her own — off your report, attributed to you — routed through the exact same safe pipeline. When it ships, she’ll ping you.

@Tootsie's "the recap is broken" check existing already tracked? file fix-order attributed to you same pipeline PR → CI → deploy pings you when fixed if it’s already tracked, she tells you — no duplicates filed
She deduplicates — if a fix is already in-flight, she’ll reassure you it’s tracked instead of filing again.

The order desk

the /order screen

Running /order without any text opens a small ops console. Mods can see everything cooking — what’s in-flight, what shipped, what burned. From there: retry a failed order, cancel one, open or close the kitchen, or roll back the last deploy if something went sideways. It’s the single screen for all of it.

any mod can

  • file a new order
  • see all in-flight orders
  • retry or cancel an order
  • close the kitchen (pause orders)
  • roll back a bad deploy

nobody can

  • order changes to her voice rules
  • bypass the pre-flight check
  • ship without a human merge
  • touch deploy config or boot logic
  • open more than the in-flight cap
Status flow: every order goes Prepping → On the stove → Plating → Served (or Burnt / Sent back if something goes wrong). You always know where your order is.

She tells you when it’s live

closing the loop

Once the fix deploys, Tootsies posts back in the channel where the order was filed — tagging the person who asked. Not a generic announcement, not a status page: a direct ping in the room, the moment the feature is live. The same channel, the same person, one message.

🔗 PR merged human approves 🚀 live on Railway bot redeploys 📌 issue closed order → Served 🔔 pings reporter same channel, one message fires once per order — whether a mod filed it or a regular reported the bug
The ping fires automatically: no polling, no checking back. You just hear when it’s done.

under the hoodGitHub · Railway · Claude Code (writes the pull request) · CI

mods: type /order <the feature>