Durable Workflow Engine for Conversational AI

Wikit needed a way to run complex conversational AI flows reliably—beyond fragile prompt chains or single-service backends.
I designed and built a workflow engine that turns AI interactions into structured, durable executions with state, branching, and real-time feedback.
A single conversation can branch on user intent, invoke external services, retry failed steps, and stream intermediate progress back to users—making AI behavior more resilient, observable, and production-ready.
Core Capabilities
- Workflow engine for multi-step conversational AI with stateful execution
- Conditional branching and parallel step orchestration
- Real-time event streaming for live progress feedback
- Built-in retries, failure handling, and execution control
- Extensible plugin system for adding new workflow steps
Key Results
- Replaced fragile prompt chains with durable workflows (state, retries, controlled execution lifecycle)
- Improved observability through real-time events and persistent activity logs
- Enabled safe iteration on AI behavior with clear execution traces and debugging visibility
- Reduced development friction via standardized configuration and tooling across the monorepo
Architecture Overview
Wikit Semantics Workflow is a TypeScript-based workflow platform built on Temporal, structured as loosely coupled services:
- Gateway (API + Event Streaming)
Handles external requests and streams workflow events to clients in real time - Workflow Engine (Orchestration)
Manages workflow state, branching logic, and execution control using Temporal - Worker (Activity Execution)
Executes individual workflow steps (AI calls, external services, transformations)
Technical Highlights
- Modelled workflows as directed graphs with typed schema validation
- Implemented branch pruning and parallel step scheduling
- Built a plugin-based activity registry for extensibility
- Designed a Redis-backed event layer separating real-time signals from persistent logs
- Standardized TypeScript configuration, linting, and tooling across a monorepo
My Role
Owned the system end-to-end:
- Designed architecture and workflow model
- Implemented the runtime and orchestration layer
- Built service infrastructure and event system
- Developed shared tooling for consistency across apps and packages