Skip to main content
Reverse-chronological. Newest first. Every meaningful SDK, API, or docs change.

June 2026

Docs nav cleanup

  • Sidebar consolidation. Merged Custom Routers + Agent Optimization into a single Refinery group; renamed AgentOptAgent Optimization for clarity. Reordered the Refinery sidebar so API Reference sits above Integrations / Pricing.
  • Archived pages. Removed essentials/prompt_optimization.mdx and essentials/optimizer-comparison.mdx (GEPA vs MIPROv2) — superseded by the unified Agent Optimization page.
  • Removed Mintlify-starter cruft. Dropped the Authoring group (essentials/markdown, essentials/navigation, essentials/reusable-snippets, essentials/settings) — all four were tutorial pages about authoring with mint.json, which no longer exists.
  • Foundry sidebar. Folded the single-page Workflows group under Tasks (one fewer group; the Blueprints “coming soon” page lives on alongside the Tasks family it points consumers to).
  • Navbar. Removed redundant Dashboard and Open IronLabs entries from the top-right dropdown.

SDK — package rename (npm + PyPI) and release sequence

  • Node SDK renamed to ironlabs. After a brief interim as ironlabsai@1.0.0, the final brand-aligned name is ironlabs on npm. Both ironlabsai and ironaai are deprecated with a redirect message.
    • ironlabs@2.0.0 (2026-06-15) — package rename, new canonical export IronLabs, env-var primary IRONLABS_API_KEY with fallback chain to IRONLABS_AI_API_KEY and IRONAAI_API_KEY.
    • ironlabs@2.1.0 (2026-06-17) — surface OpenRouter ground-truth cost via the onCost callback. Previously dropped; now flows through the same llmgateway-cost stream part regardless of which gateway served the request.
    • ironlabs@2.1.1 (2026-06-18) — companion fix: request OpenRouter usage: { include: true } so the cost field actually lands in the stream chunk. Without this, 2.1.0’s callback was a silent no-op for OR.
    • ironlabs@2.1.2 (2026-06-18) — defensive guard against unhandled-rejection crash on no-output streams from streamText.
  • Python SDK renamed to ironlabs on PyPI. ironlabs@0.1.0 published 2026-06-16 (was ironaai). README documents the preferred uv build + uv publish path; legacy poetry build / poetry publish kept as a fallback.
  • Migration. Update install command + import; existing API key keeps working — the SDK accepts IRONLABS_API_KEY (preferred), IRONLABS_AI_API_KEY, and IRONAAI_API_KEY with a one-time deprecation warning when a legacy name is used.

URL + brand finalization

  • All public *.irona.ai URL references migrated to *.ironlabs.ai across the SDKs and consumer surfaces.
  • iron.cx short-link still redirects to chat.ironlabs.ai (308).
  • Modal infrastructure slugs (irona-ai--*.modal.run) intentionally unchanged — those are real backend names.

December 2025

  • Docs: New essentials/routing-lifecycle.mdx — five-state Mermaid flowchart of every request from received → logged.
  • Docs: New essentials/sandbox-isolation.mdx — negative-guarantee table for tenant / Custom Router / AgentOpt sandbox / provider-key boundaries.
  • API: POST /completions endpoint reference published.
  • Docs site: Restructured into two tabs — Refinery and Foundry. Brand standardized to IronLabs.
  • Domain: Docs site moved to docs.ironlabs.ai.

November 2025

  • Released: Custom Router. Train and deploy your own LLM router on your data via RouterTrainer. Python SDK + Node SDK.
  • Released: Prompt Optimization. Run GEPA + MIPROv2 in parallel against your dataset; winner picked automatically. PromptOptimizer.fit(...).
  • Released: AgentOpt. Closed-loop agent optimization. Upload agent.py with EDITABLE / FIXED markers, an eval.py, and a dataset; Foundry’s optimizer rewrites the agent across iterations and returns the best-scoring version.
  • SDK: New cookbooks shipped alongside each feature — custom_router_cookbook.ipynb, prompt_optimization_cookbook.ipynb, agentopt_notebook.ipynb.

Older releases

For pre-November history, see commit log or contact support@ironlabs.ai.