Most AI automation demos stop at the easy part.
A task appears, an agent writes code, and the screenshot looks good. Fine. The real problem starts later, when the system has to run every day, survive messy inputs, keep context, and stay understandable.
That is what pushed me to rethink SW Factory.
Version one already had the right idea: connect business events to execution. Version two is more structured. The goal is not more AI. The goal is better orchestration.
The stack is simple:
- Odoo as the operational source of truth
- N8N as the workflow layer
- BYOK as the credential and model strategy
- OpenClaw and subagents as the execution layer
The real problem
Once agents move into real operations, four issues show up fast.
Tasks arrive with missing context. Different tasks need different execution paths. Credentials become messy. And when something breaks, it is often hard to see where or why.
That is what SW Factory v2 is trying to solve.
Why N8N
N8N gives the workflow a visible shape.
A task changes in Odoo, N8N picks it up, validates the payload, decides whether it is ready, and routes it to the right next step. That might be an agent run, a notification, or a stop.
That sounds basic, but it matters. Without that layer, orchestration logic turns into scattered scripts and hidden glue code.
Why BYOK matters
BYOK stops credentials from becoming a silent mess.
When several bots, workflows, and environments share the same AI infrastructure, hardcoded keys are just technical debt waiting to hurt you. I want cleaner separation, clearer ownership, and the freedom to switch providers without rebuilding everything around one secret.
It is not glamorous, but it makes the system easier to operate and easier to debug.
Where OpenClaw fits
OpenClaw is the execution layer, not the whole architecture.
That matters because I do not want the runtime making every decision in isolation. I want it receiving work that is already shaped, contextualized, and constrained.
Subagents help with that. Instead of pushing everything through one long thread, I can run focused execution paths for different types of work.
What changed in v2
The main difference is that the system is less improvisational.
The flow now looks more like this:
- Odoo emits the event
- N8N shapes and validates it
- The workflow decides the path
- BYOK keeps model access separate
- OpenClaw executes in the right lane
- Results go back into the system with traceability
That does not make the system magical. It makes it legible.
Closing
That is the part I care about most.
Once code generation gets cheap, the hard part is no longer writing code. The hard part is orchestration, context, credentials, and control.
That is where the real engineering starts.