Hi everyone!
Here's my entry for Bot Bash: an AI agent that turns a plain-language description into a published Genesys Architect flow.
🧟 The grotesque: what needed fixing?
On every project, demo or pre-sales engagement, I was building the same flows in Architect by hand: IVRs, messaging, email, bots and common modules. They used the same DTMF menus, the same business-hours checks and the same data actions with retries, just rebuilt for each customer. It was slow, and many errors only showed up at publish time: a misspelled queue, a prompt that didn't exist in the org, a variable with the wrong type.
So I tried the obvious thing and asked an AI to write the Archy YAML. It looked perfect and didn't publish. The model made up actions, functions and properties that don't exist, or that depend on the org's license.
⚗️ The experiment: what did I change?
I set one rule: the AI doesn't write YAML. It writes a small intermediate JSON format, and a compiler (with no AI) turns that into YAML.
The org's own Archy schemas (archy refresh) are the source of truth. If an action isn't in the schema, the agent can't use it.
Before compiling, the agent looks up every queue, prompt, data action, data table, skill and AVA in the org. If something is missing, I get a missing-prerequisites report instead of a broken flow.
If my description isn't enough, the agent asks instead of guessing.
If a publish fails, it tries to fix it twice at most, then stops and shows me the exact Archy error.
Everything is exposed as MCP tools, so any AI assistant can design flows with the same rules.
On the Genesys side, I used Agentic Virtual Agents (imported and published through the API), Bot Flows and Digital Bots as bridges, Function Data Actions and Web Messaging for end-to-end testing.
⚡ It's alive: what happened next?
100% first-attempt publish rate with no human edits on my regression suite of 11 flow types (voice, in-queue, outbound, SMS, email, workflow, common module, bots, survey).
A multi-industry demo kit published in a sandbox org: 1 common module, 2 bridge bots, voice, messaging and email flows, and 9 AVAs. 15 out of 15 end-to-end conversations passed.
One flow serves 9 industries. To change a queue or an AVA, you edit a row in a data table, not the flow.
Demos that used to take weeks now come together in hours.
Tips for the next mad scientist:
Don't let the AI write the final file. Let it write something you can validate, and generate the file with deterministic code.
Track one honest metric (did it publish on the first try?) and roll back anything that makes it worse.
Test end to end. That's how I found that AVA End Context outputs without a mapping arrive empty (I fixed it with an "echo" Function Data Action), and that the digital bot's input has to be passed to the AVA as Start Context.
Wishlist for Genesys: reference an AVA by ID or expression in Architect, a lighter archy validate (a full refresh takes over an hour on a big org), and error messages that tools can act on.
Thanks for checking it out! I hope it helps others build faster and safer with Genesys Cloud.
------------------------------
Sebastian
Ingeniero de Proyecto
------------------------------