Every agent. One checkpoint.

Mouline Platform sits between your AI agents and everything they touch: models, tools, APIs and data. It runs inside your network, sees every call, holds every credential and applies your rules before anything leaves.

Works with the agents and models you already run

Point them at one endpoint. No code changes, no new SDK.

  • Nova
  • Claude Code
  • CxCodex
  • Opencode
  • Cursor
  • GitHub Copilot
  • Gemini CLI
  • Windsurf
  • LangChain
  • CrewAI
  • n8n
  • { }your own agent
  • Anthropic
  • AIOpenAI
  • AWSAWS Bedrock
  • Vertex AI
  • AzAzure OpenAI
  • Mistral AI
  • Meta Llama
  • DeepSeek
  • Qwen
  • Hugging Face
  • vLLM
  • Ollama
  • NVIDIA NIM

Product names and logos are trademarks of their owners, shown to indicate compatibility. No endorsement implied.

Skip ahead

The questions your auditor asks, answered in one screen.

One console for every agent in the company. Pick a capability to see it running on a sample deployment with five agents, four model providers and sixty-seven people.

Observe

Enforce

Route and spend

plane.acme.internal/egress
Egress audit: every outbound HTTP call with host, method, status and allow or deny Session view: a Nova conversation with every tool call and its arguments Tool audit: per-call log of tool name, argument keys, duration and status Shadow Broker policy: allowed and denied operations for GitHub, Jira and NetSuite Prompt Guardians: policies and recent redactions and blocks Access matrix: groups against tools and models, with allow, approve and deny Routing: provider traffic share, health and model selection rules Costs: daily spend and spend by model

Every outbound call, on the record.

All agent traffic leaves through Veil, a deny-by-default egress proxy. Every request is logged with host, method, path, size, latency and the decision. Anything off the allowlist is refused before it reaches the internet.

Answers questions like Did any agent send data to a host we have never approved?

Agents do the work. They never hold the keys.

The Shadow Broker keeps every credential. When an agent needs GitHub, Jira or your ERP, the broker checks the request against policy, mints a short-lived token scoped to that one call, runs it, and throws the token away.

  1. The agent asks

    Claude Code wants to open a pull request. It calls gh pr create with no token in its environment.

  2. Policy decides

    The broker matches the full command against the caller's policy: which org, which branch, which verbs. Force pushes and deletes never match.

  3. A token is minted for one call

    A GitHub App token scoped to one repository, valid for ten minutes, bound to the human behind the session.

  4. The broker runs it

    The command executes on the broker's side. The agent gets the output and nothing else.

  5. The token dies, the record stays

    The token is revoked. Who asked, what ran, and what came back are written to the audit log.

claude-code · j.okafor@laptopwhat the agent sees

Prompt Guardians read everything before the model does.

Guardians inspect prompts on the way out and tool results on the way back. Secrets and personal data are swapped for placeholders the model can still reason about, then restored in the answer. Injections and exfiltration attempts are stopped cold. Try it.

edit me

What the model receives 11 ms

The right model for each call, from whichever provider is up.

Write rules for which model handles which work. The platform spreads traffic across Anthropic, Bedrock, Vertex and your own GPUs, watches their health, and fails over in the same request. Budgets are enforced per team, per agent and per person.

routing.yamlv14 · live
rules:
  - when: agent == "nova" and task == "recipe.run"
    model: claude-haiku-4-5      # recipes are deterministic
  - when: repo matches "acme-payments/*"
    model: vllm/qwen3-coder-72b  # never leaves the network
  - when: user.team == "platform"
    model: claude-opus-5-5
  - model: claude-sonnet-5       # everyone else

providers:
  anthropic:  { weight: 55 }
  bedrock:    { weight: 30, region: eu-west-1 }
  vertex:     { weight: 10, region: europe-west4 }
  vllm-onprem:{ weight: 5 }
  failover: same-request

budgets:
  team/product-eng: $2,000 / month, at: 90% notify, 100% downgrade
2,126requests a minute
631 msmedian latency
$2,914saved last month by routing
Anthropic
AWS Bedrock
Google Vertex
vLLM on-prem

Runs in your network. Answers to your security team.

The whole plane ships as containers you run in your own VPC or data centre. Prompts, transcripts, credentials and audit logs stay on your disks. We never see them.

Architecture: agents inside your network send all traffic through the Mouline Platform, which holds credentials, inspects prompts, routes to model providers and allows only approved egress. your VPC or data centre NovaSlack, Teams, Jira Claude Codeengineer laptops Codex, Opencodeengineer laptops Your agentsSDK, LangGraph Okta / Entraidentity Mouline Platform one endpoint for every agent Gatewayroute, meter, cap Guardiansredact, block Shadow Brokervend credentials Veilegress allowlist Policywho can call what Argus consoleaudit and replay Audit storePostgres in your account GitLab, GitHubvia broker Jira, Slackvia broker ERP, dataread scopes only vLLM clusteryour GPUs Splunk, DatadogSIEM export internet Anthropic, Bedrock, Vertexmodel providers Approved SaaS APIsallowlisted hosts Everything elserefused and logged

Ships as containers

Helm chart or Docker Compose. Air-gapped installs supported with your own model cluster.

Your identity provider

SSO through Okta, Entra ID or Google. Groups sync into policy automatically.

Evidence, not screenshots

Append-only audit log with exports your SOC 2 and ISO 27001 auditors can sample directly.

No agent changes

Agents point at one endpoint and one proxy. Nothing to fork, no SDK to adopt.

Connecting an agent takes three lines.

Point the agent at the platform, send its traffic through Veil, and sign in once with your company identity. From that moment its calls are audited, its credentials are brokered and its spend is metered.

Nova runs on it. So can everything else.

Nova is the agent we build: it does a team's operational work inside Slack, Jira and GitLab, and hardens what it learns into versioned recipes. Every Nova tool call, credential and token goes through this same plane. Buy the platform on its own, or get it with Nova.

Meet Nova
recipe
invoice.exceptions v3, routed to Haiku because the steps are fixed
credentials
NetSuite read token and Jira comment token, vended per call by the broker
egress
4 hosts allowed, 0 denied in this run
guardians
2 vendor emails redacted before the model saw them
cost
$0.031 for the run, charged to finance-ops
approval
Jira transition held for a human in Slack, approved by r.costa

Say yes to agents without losing sight of them.

We will install the platform in a sandbox of your network, connect the agents your teams already use, and show you a week of their traffic.