IteraOS Intelligence Layer

A Fleet of AI Agents
Built for Scale

A complete, authoritative catalog of every AI agent and model the platform uses. Understand how our multi-agent architecture provides resilience, cost-discipline, and a clear path to self-governed, enterprise-scale intelligence.

The Intelligence Layer, Made Legible

This is a complete, authoritative catalog of every AI agent and model the platform uses, where each one runs, why it was chosen, its input/output contract and tunable parameters, and how they are orchestrated together. It exists to make the platform's intelligence layer legible — both to operators reasoning about cost/quality/latency trade-offs and to evaluators assessing why this platform is a superior management- and executive-function layer for small-to-medium businesses (SMBs), with a clear path to self-governed, enterprise-scale intelligence.

Source of truth. Model pricing/registry lives in src/ai-pricing.ts (DEFAULT_TEXT_PRICING, DEFAULT_MEDIA_PRICING) and is projected into the runtime AGENT_MODELS array in src/agent-core.ts. Orchestration (routing, fallback, cheap-companion, embedding failover) lives in src/agent-core.ts and src/rag-utils.ts. This document is written to match that code; when the code changes, this file is updated alongside it.

Why a Multi-Agent Architecture

Most products bolt a single LLM onto a UI. This platform instead treats models as a fleet of interchangeable, individually-specialized agents behind a uniform orchestration layer. That yields four properties an SMB cannot easily build alone but an executive layer demands:

🛡️1. Resilience

If any one provider's account is exhausted or a model is decommissioned, the platform automatically switches to a capable peer (chat, embeddings, and media all have failover). The business keeps running.

💰2. Cost Discipline

Cheap models do cheap work (recon, classification, short replies); expensive flagships are reserved for reasoning and long-horizon agentic tasks. Two-tier routing does this per-turn, invisibly.

🎯3. Domain Fit

The right model for the job: search-grounded models for current-events questions, a finance-tuned embedder for money semantics, a long-horizon agentic model for multi-step build tasks.

📋4. Governance & Auditability

One pricing table, one usage ledger, one place to reason about spend, and per-message settings snapshots so every answer is explainable.

The enterprise scaling path (see §9) replaces or augments the hosted fleet with a self-governed, internally-hosted open-source LLM so an enterprise can expand its private context window across the whole org without sending data to third parties — the same orchestration layer, pointed at models it controls.

The Provider Fleet at a Glance

ProviderRole in platformChatEmbeddingsMedia
OpenAIPrimary chat + primary embeddings + transcription/vision✅ (primary)image/TTS
Anthropic (Claude)Deep reasoning + long-horizon agentic work❌ (no API)
Google (Gemini)Balanced/cheap chat + embeddings fallback + media✅ (fallback 1)image/TTS/video/music
Perplexity (Sonar)Live web-grounded answers❌ (no API)
Voyage AIEmbeddings fallback + finance-domain embeddings❌ (no API)✅ (fallback 2)
Specialist mediafal.ai, Ideogram, Stability, Runway, Luma, Kling, MusicGPT

Why Anthropic and Perplexity have no embeddings: neither vendor ships an embeddings API — they are chat/completion only. Voyage AI (Anthropic's recommended embedding partner) fills that role in the failover chain.

Text/Chat Agents

All chat models are defined once in DEFAULT_TEXT_PRICING and exposed as AGENT_MODELS. Pricing is USD per 1M tokens (input / output), verified against each vendor's public pricing page.

3.1 OpenAI — GPT-5.x (General-Purpose Workhorses)

ModelIn / Out (per 1M)Cached inWhere usedWhy
GPT-5.5$5.00 / $30.00$0.50Heavy chat, hardest writing/analysisFlagship quality when depth matters
GPT-5.4default$2.50 / $15.00$0.25/ai-chat default, SMS/Slack auto-replyBest all-round quality-per-dollar
GPT-5.4 mini$0.75 / $4.50$0.075Cheap-companion for recon roundsFast, cheap, good enough for bandwidth-bound work
GPT-5.4 nano$0.20 / $1.25$0.02Companion's companionCheapest tier for trivial turns

3.2 Anthropic — Claude (Reasoning & Long-Horizon Agency)

ModelIn / Out (per 1M)Cached inWhere usedWhy
Claude Fable 5$10.00 / $50.00$1.00Managed/agentic build tasks; advisorPlans across stages, verifies its own work, works independently longer
Claude Opus 4.8$5.00 / $25.00$0.50Deep reasoning; Fable-5 safety fallbackHighest Claude reasoning tier
Claude Sonnet 5$2.00 / $10.00$0.20First autonomous fallbackCheaper mid-tier flagship; great price/perf
Claude Sonnet 4.6$3.00 / $15.00$0.30Balanced reasoningProven mid-tier
Claude Haiku 4.5$1.00 / $5.00$0.10Cheap-companion for all Claude tiersFast recon/short-turn model

3.3 Google — Gemini (Balanced, Cheap, Multimodal)

ModelIn / Out (per 1M)Cached inWhere usedWhy
Gemini 3.5 Flash$1.50 / $9.00$0.15High-throughput chatFast flagship-class Flash
Gemini 2.5 Pro$1.25 / $10.00$0.125Deeper Gemini reasoningLong-context strength
Gemini 2.5 Flash$0.30 / $2.50$0.03Autonomous fallback; cheap-companionCheapest capable general model
Gemini 2.5 Flash Lite$0.10 / $0.40$0.01Ultra-cheap tierBulk/low-stakes turns

3.4 Perplexity — Sonar (Live Web-Grounded Answers)

ModelIn / Out (per 1M)Where usedWhy
Sonar$1.00 / $1.00Current-events / citation answersCheap search-grounded
Sonar Pro$3.00 / $15.00Higher-quality grounded answersBetter synthesis + citations
Sonar Reasoning$1.00 / $5.00Grounded + reasoningSearch + chain-of-thought
Sonar Reasoning Pro$2.00 / $8.00Best grounded reasoningTop Sonar tier

Intelligent Orchestration

The value is not the models; it's the coordination layer around them.

4.1 Automatic Model Fallback (Self-Healing)

When a model call fails fatally (decommissioned, 404, capability-rejected, or the provider account is exhausted — credit/quota/billing), the platform switches to a capable peer instead of erroring at the user:

  • Same-provider, same-price-tier first (Claude→Claude, GPT→GPT), then other providers by price proximity, then the hardcoded AUTONOMOUS_FALLBACK_CHAIN (claude-sonnet-5 → claude-sonnet-4-6 → gpt-5.4 → gemini-2.5-flash → claude-haiku-4-5 → gpt-5.4-mini) as a last resort.
  • Account-exhaustion marks the whole provider dead for that request so the fallback skips every model sharing the dead key.
  • Transient errors (5xx, timeouts, rate-limit with a retry hint) are retried in-place with backoff before any switch.

4.2 Two-Tier Cheap-Companion Routing (Cost Discipline)

In the agentic runtime, when the previous turn only did read-only work (read_file, list_directory, search_files, SELECT/PRAGMA/EXPLAIN SQL), the next round is served by a cheap companion (CHEAP_COMPANION map, e.g. gpt-5.4 → gpt-5.4-mini, claude-*→claude-haiku-4-5, gemini-2.5-pro → gemini-2.5-flash). Recon is bandwidth-bound, not reasoning-bound — mutations and the first round always use the primary model.

4.3 Model Aliasing & Suitability Gating

  • Retired model ids are transparently remapped to current equivalents (e.g. gpt-4o → gpt-5.4, claude-3-opus → claude-opus-4-8).
  • Reasoning/vision-only models unsuitable for interactive writing (WRITING_ASSISTANT_INCOMPATIBLE_MODELS) are filtered from the /ai-chat model dropdown and rejected at the API with a suggested alternative.

4.4 Auto-Continue on Truncation

If a reply stops at the output-token limit, the platform stitches a continuation turn ("resume where you left off") so the user receives one complete answer.

4.5 Per-Message Settings Snapshots (Auditability)

/ai-chat and agent-chat capture the model + context toggles used for each message (in-memory only) so any answer's provenance is explainable in the UI.

Agent Surfaces

A breakdown of where the AI fleet is actually used across the IteraOS platform.

SurfaceEntry pointModelsPurpose
AI Writing AssistantPOST /api/ai-chatAny chat model (default GPT-5.4)Draft/edit/brainstorm with RAG, platform self-awareness, finance, web, Bible, attachments, focused-document, and document-creation context
Autonomous / coding agentrunAgent (/api/agent/chat)Primary + cheap-companion + Claude advisorMulti-round tool-using build/ops tasks (read/write files, run SQL, etc.) with self-healing fallback
SMS auto-replygenerateAssistantReply (Textmunication MO webhook)Default chat modelOne-shot grounded reply to inbound SMS, using platform + conversation context
Slack assistantgenerateAssistantReply (Slack events)Default chat modelRead-only Q&A over the user's kanban/calendar/CRM data
Multi-agent comparisonmulti-agent-comparison.tsImported ChatGPT/Claude/Perplexity/Gemini exportsAnalyzes/compares external agent conversations (offline; no live calls)
RAG synthesis/api/rag/synthesizeRAG_SYNTHESIS_MODEL (gpt-4o-mini)Summarizes retrieved cross-domain recall into an answer
Intent detectiondetectIntent (unified-agent-tools.ts)Heuristic (no LLM)Routes chat turns (file-gen intent, finance intent, etc.) cheaply before spending tokens

The Spatial Intelligence Layer

RAG / recall is powered by vector embeddings, with the same failover philosophy as chat. All embeddings flow through embedTextsResolved() in src/rag-utils.ts.

6.1 Failover Chain (Redundant Recall)

OrderProvider · ModelDimsNotes
PrimaryOpenAI text-embedding-3-small1536Existing corpus lives here
Fallback 1Gemini text-embedding-004768batchEmbedContents
Fallback 2Voyage AI voyage-3.51024Anthropic's embedding partner

Switching happens only on account exhaustion (never a transient blip, which would needlessly fragment the index).

6.2 Vector-Space Safety (The Non-Obvious Guarantee)

Embeddings from different models occupy different vector spaces and are not comparable. The platform therefore: tags every row with the model that produced it; embeds the query once per model space present and scores each row only against the query vector of its own model; returns 0 from cosineSimilarity on any dimension mismatch; and gates the pgvector/HydraDB ANN fast-path to the primary space only. This makes multi-provider embeddings correct, not just redundant.

6.3 Domain-Specific Embedder: Finance

The ledger_entries RAG source pins embeddingModel: 'voyage-finance-2' so transaction recall understands money/merchant/category semantics — enabling semantic finance queries like "recurring AI subscriptions" or "payments related to cloud infrastructure" that plain SQL aggregation can't answer. If Voyage is unavailable, finance content indexes in the default space and remains searchable (just without the finance tuning).

6.4 What's Indexed (Recall Sources)

Documents, group documents, emails, contacts, project cards, voice-memo transcripts, SMS, Slack, orders, AI-chat history, and finance transactions — all embedded and unified so an executive can ask one question across every domain.

Media & Specialist Agents

7. Media-Generation Agents

Media generation is a pluggable fleet, priced per unit in DEFAULT_MEDIA_PRICING.

CategoryProviders / modelsUnitNotes
ImageOpenAI gpt-image, Flux 1.1 Pro (fal.ai / Replicate), Ideogram 3.0, Google Imagen 4, Gemini 2.5 Flash Image, Stability, self-hosted Stable Diffusion ($0)per imageLocal SD demonstrates the self-hosted cost floor
Audio (TTS)OpenAI TTS / TTS-HD, Gemini TTSper 1k charsLong text is chunked
VideoRunway Gen-3/4, Luma Dream Machine, Kling, Google Veo 3.1per secondAsync jobs w/ webhook + poller finalization
MusicMusicGPT, Lyria 3 (Vertex)per trackWebhook cover-callback pipeline

8. Specialist / Utility Models

FunctionModelWhereWhy
TranscriptionOpenAI whisper-1Sizzle reels (sizzle-reels.ts), voice memosAudio → text for highlight selection & recall
Vision highlight selectionOpenAI GPT-4o visionSizzle reelsFrame sampling → clip picks
Document classificationXenova/distilbert-base-uncased-mnli (local, zero-shot, $0)Email automationDistinguishes invoices/receipts from quotes/marketing without an API call — a self-hosted intelligence primitive
RAG answer synthesisgpt-4o-mini (RAG_SYNTHESIS_MODEL)/api/rag/synthesizeCheap summarization of retrieved context

The local DistilBERT classifier and self-hosted Stable Diffusion are early proof points of the platform's self-governed intelligence direction (§9): capable, private, zero-marginal-cost models running on infrastructure the operator controls.

Enterprise Scaling: Self-Governed Intelligence

The orchestration layer described above is provider-agnostic by design: chat, embeddings, and media are each resolved through a single indirection (AGENT_MODELS / embedTextsResolved() / the media registry). That is the hook for the enterprise tier.

The plan: for enterprise deployments, add a self-hosted, self-governed open-source LLM (and a self-hosted embedder) behind the same interfaces:

  • Data Sovereignty: Private/regulated context never leaves the enterprise network; the model is hosted on infrastructure the organization governs.
  • Enterprise-Wide Context: A private model can be continuously indexed on the org's full corpus (documents, finance, comms, operations), expanding the platform's recall far beyond what per-seat hosted context allows.
  • Cost at Scale: Inference becomes a fixed infrastructure cost instead of per-token spend; the local DistilBERT classifier and self-hosted Stable Diffusion ($0 rows in the pricing table) already prove the pattern.
  • Same Resilience Story: The self-hosted model slots into the fallback chain as either the primary (private-first) or a peer, so the hosted fleet remains a spillover/redundancy option.

Because the platform already tags every embedding with its producing model and isolates vector spaces, an enterprise can stand up its own embedding space alongside the hosted ones without breaking existing recall — the migration is additive, not a rebuild.

Configuration & Maintenance

10. Configuration & Keys

Env varPowersAbsence behavior
OPENAI_API_KEYGPT-5.x chat, primary embeddings, Whisper, vision, TTS, RAG synthesisChat falls back to other providers; embeddings fall to Gemini/Voyage
ANTHROPIC_API_KEYClaude chat + agentic runtimeClaude models filtered out
GEMINI_API_KEYGemini chat + embedding fallback 1 + mediaGemini filtered; embedding fallback 1 skipped
PERPLEXITY_API_KEYSonar web-grounded chatSonar models filtered out
VOYAGE_AI_API_PRIVATE_KEYEmbedding fallback 2 + finance embeddings (voyage-finance-2)Finance uses default embedding space; chain ends at Gemini
VOYAGE_EMBEDDING_MODEL (optional)Override the general Voyage modelDefaults to voyage-3.5
RAG_SYNTHESIS_MODELRAG answer synthesisDefaults to gpt-4o-mini
RAG_AUTO_INDEX / _INTERVAL_MS / _LIMITBackground auto-indexerOff when unset

Pricing for every model is DB-backed and admin-editable (ai_model_pricing), seeded from DEFAULT_TEXT_PRICING / DEFAULT_MEDIA_PRICING, with a weekly auto-refresh worker recording each run — a single governance surface for AI cost.

11. Maintenance

IteraOS | Business Management Platform — Get Early Access

Schedule an Architecture Review

Loading availability…