Convex Workflows + Agents for a Manus‑like Sandbox Analytics Agent (vs Rivet Actors / Agentuity)
Context: Users ask questions about datasets (I manage the datasets). For each “run,” the system creates/resumes an isolated sandbox workspace (E2B/Daytona/VM), does filesystem-style search over that workspace, generates Python/SQL, executes it in the sandbox, and returns an answer plus artifacts (tables/charts now; possibly Mapbox map layers later). The agent may call multiple tools iteratively, run for 10-30 minutes), and needs realtime UI updates, resumability after disconnect, retries on flaky sandbox/network calls, and cancellation. Also, the agent runs in convex backend not in the sandbox.
Single question: Is Convex (Agent component + Workflow component) mature enough to power this end-to-end (durable orchestration + streaming UI updates + sandbox control), or will I hit limitations and be better off using something like Rivet Actors (stateful session process) or Agentuity (managed agent runtime)? I read that Workflow is meant for durably executing workflows that can run very long and can wait for external events. Does that translate well to this “agent + sandbox tool loop” in practice?
If Convex is viable, what’s the recommended architecture (e.g, Workflow orchestrates steps, Agent handles LLM/tool calls with streaming deltas, Actions call the sandbox APIs, UI subscribes to run/thread/artifact tables), and what are the main gotchas around retries/idempotency and streaming artifacts?
