Tramai Logo
Tramai

Orchestrator Vision: TramAI as a Fully-Fledged Orchestration Platform

Status: Planned Owner: Maintainer Last updated: 2026-05-04


Why This Exists

TramAI is already strong at single typed AI-backed operations via @AiService, and the tramai-orchestration module provides a workflow DSL for composing those operations. However, TramAI remains a JVM library — it cannot schedule workflows, expose them over HTTP, spawn external agents, or run across multiple machines without application code wrapping it.

This document defines a multi-phase effort to transform TramAI from a workflow library into a full-featured orchestration platform that competes with Temporal, n8n, and Airflow in the JVM/AI space — while keeping its core identity: type-safe, testable, observable, and framework-agnostic.


Design Tenets

  1. Every new module is optional. The core tramai-orchestration workflow DSL must remain usable standalone. New modules add capabilities on top.
  2. Workflows remain typed and testable. No step should require raw prompt strings or untyped state maps.
  3. External integrations are explicit step types, not magic. Hermes, HTTP, shell, MCP — each is a named step in the DSL.
  4. MCP is a first-class protocol. Every TramAI workflow is automatically exposable as an MCP server.
  5. Observability is mandatory at the hook level, optional at the OTel dependency level. Every new module must emit stable TramAI observer events.

Current Gaps (as of v0.2)

GapWhy It MattersModule
No scheduling/cronCannot trigger workflows on a timertramai-scheduler
No HTTP APINo way for external agents to start/resume workflowstramai-server
No MCP serverAgents cannot discover or call TramAI workflowstramai-mcp
No webhook receiverCannot react to GitHub, email, or Slack eventstramai-server
No agent spawningWorkflow steps cannot call Hermes, shell, or HTTP(planned)
No per-step timeoutA hanging step stalls the entire workflow(planned)
No per-step retrySteps fail without retry with backoff(planned)
No distributed workersSingle-JVM only, no horizontal scaling(planned)

Current Status (v0.4.x)

The following gaps have been addressed:

GapModuleStatus
Scheduling/crontramai-schedulerShipped in v0.3.0
HTTP APItramai-serverShipped in v0.3.0
MCP servertramai-mcpShipped in v0.3.0
Webhook receivertramai-serverShipped in v0.3.0
Multi-tenancy/authtramai-platformShipped in v0.3.0
Dashboardtramai-dashboardShipped in v0.3.0

Module Architecture (Post-Orchestrator)

tramai-platform  (optional: admin UI, plugin system, multi-tenancy, auth)
    |
tramai-dashboard  (optional: Vue 3 + Vite SPA, served by Spring Boot)
    |
tramai-server  (optional: REST API, MCP server, webhooks, SSE, OpenAPI)
    |
tramai-agent (planned)     tramai-scheduler (shipped)
(HTTP, shell, MCP, Hermes)  (cron, delay, calendar)
    |
tramai-orchestration  (core workflow DSL)
    aiStep, localStep, gateStep, branchStep, parallelStep
    |
tramai-engine | tramai-structured | tramai-core  (existing core)

Phases Overview

PhaseModuleTimelineStatus
Phase 6tramai-scheduler1-2 weeksShipped v0.3.0
Phase 7tramai-server2-3 weeksShipped v0.3.0
Phase 8tramai-agent2-3 weeksPlanned
Phase 9tramai-distributed3-4 weeksPlanned
Phase 10tramai-platform4-6 weeksShipped v0.3.0 (initial)

Product Positioning

TramAI Orchestrator occupies a unique niche:

FeatureTemporaln8nAirflowTramAI Orchestrator
RuntimeAny (gRPC)Node.jsPythonJVM (Kotlin/Java)
AI-nativeNoNoNoType-safe @AiService
Structured outputNoNoNoBuilt-in
MCP protocolNoNoNoFirst-class
Checkpoint/resumeBest-in-classNoYesBuilt-in
Visual builderNoYesYesPhase 10
OpenTelemetryNoNoNoBuilt-in

Target customer: Enterprise Spring Boot teams that want AI orchestration without leaving the JVM ecosystem.