Synth AI
WorkshopCookbooksBlogDocsStackStackSign in
WorkshopCookbooksBlogDocsStackStackSign in
Changelog

Managed Research Launch, Horizons Agent Runtime

Friday product updates for February 20, 2026.

Friday, February 20, 20261 min read
managed-researchhorizonsbillinggepa
Archive
This is historical material. Use the current Managed Research, Research Factory, and GEPA/GELO pages for product decisions.

TL;DR

  • Managed Research launches — overnight research runs with budget enforcement, GitHub PR delivery, and a full SDK.
  • Horizons adds a deterministic actor runtime, Claude Code agent support, sandbox orchestration, and MCP tool server improvements.
  • Unified billing — Autumn is now the single billing backend for all Synth products including Managed Research.
  • RLM v1 fix — Chat Completions API compatibility restored for tool-use traces.
  • Continual learning — ontology overfitting fix, observation-only TextDreamer mode, simplified online MIPRO flow.

Managed Research

Managed Research is now live on Pro and Team plans. Connect a repo, set a budget and a night-start time, wake up to a report, result files, and PRs.

What shipped

  • Onboarding wizard — four-step flow: project basics, GitHub connection, starting data and spec, budgets. Lock-down redirect until complete.
  • Scheduled overnight runs — set a timezone, days of week, and start window. The scheduler evaluates every 60 seconds and fires automatically.
  • Budget enforcement — monthly cap blocks new runs at trigger time (402). Per-run cap hard-stops mid-run (budget_exhausted). Timebox hard-stops after N hours.
  • GitHub PR delivery — workers open PRs on your connected repos. Multi-PR per run supported. PRs tracked as github_pr artifacts on the deliverables page.
  • Deliverables page — report_md rendered as markdown, arbitrary result files with preview and download, PR cards with status badges.
  • Usage page — month-to-date spend, per-run breakdown, budget remaining, Autumn credit balance, entitlement status.
  • SDK — SmrControlClient with trigger_run, get_run, list_run_artifacts, pause_run, stop_run, set_agent_config (model and agent kind overrides).

Billing

Autumn is now the unified billing backend. All Managed Research spend deducts from the org's Autumn credit balance via the smr_spend feature. managed_research entitlement gating is enforced on project creation and run trigger. smr_active_projects tracked on create/archive/unarchive. The old smr_config.py is deleted — feature flags removed, billing gates always on.

Horizons

Deterministic Actor Runtime

New OrchestratorAgentRuntime with a deterministic actor contract for sandbox-based agent execution. Agents run inside Docker sandboxes with full MCP tool access, log tagging, and per-run setup hooks.

Claude Code Agent Support

Claude Code joins Codex and OpenCode as a supported agent kind. MCP config is split into settings.json and .mcp.json with inline token auth. MCP permission patterns fixed (mcp__orchestrator not mcp__orchestrator(*)).

MCP Tool Server

  • clear_tools() for dynamic tool registration
  • Comprehensive request logging
  • MCP tool error detection for better failure diagnostics

Sandbox Improvements

  • SandboxConfig gains log_tags and docker_socket support
  • Docker socket auto-detection (Colima, Docker Desktop, standard)
  • Health check timeout increased to 600s for heavy sandbox builds
  • libsql made optional behind turso feature flag
  • Event channel deadlock fix in run_session_in_sandbox

Continual Learning & Optimization

  • Ontology overfitting fix — context refresh no longer overfits to narrow entity patterns during continual learning.
  • TextDreamer observation-only mode — SYN-1396: collect observations without proposing changes, useful for baseline measurement.
  • Simplified online MIPRO — SYN-1349: removed tunnel and env-key friction from the online optimization flow. SDK tests cover every API path.
  • GEPA config improvements — graph API updates, helix query regeneration for better optimization stability.

RLM v1 Compatibility Fix

The RLM v1 integration test was using OpenAI's Responses API (/responses), which rejects role: "tool" messages that the RLM v1 engine naturally produces. Fixed to use Chat Completions (/chat/completions) directly — removed ~170 lines of unnecessary message normalization code.

Infrastructure

  • OpenAI Responses API usage fields — cached and reasoning token counts now handled correctly in usage tracking.
  • Devcontainer — SYN-1388: declarative devcontainer.json environment definition added to dev sandboxes across backend, rust_backend, and Horizons.
  • Managed Research worker diagnostics — claim-by-id logging, relaxed pool filters, retry_of migration, queued-stall recovery.
←Back to Changelog

Ready to try Synth?

Get started with serverless RL training and prompt optimization.

Get StartedSchedule Demo
On this page
  • TL;DR
  • Managed Research
  • What shipped
  • Billing
  • Horizons
  • Deterministic Actor Runtime
  • Claude Code Agent Support
  • MCP Tool Server
  • Sandbox Improvements
  • Continual Learning & Optimization
  • RLM v1 Compatibility Fix
  • Infrastructure
© 2026 SynthWorkshopReleasesCookbooksChangelogOpen sourceDocsBook a Demo