Autonomous AI agent for Oracle Fusion Cloud

Your Oracle ERP.
Finally agentic.

An AI agent that runs ESS jobs, deploys BIP reports, loads FBDI, monitors production — and waits for your approval before any write.

Persistent sessions. Per-org memory. Python execution. Multi-environment. Built on Cloudflare Durable Objects — sessions survive browser closes, phone calls, and 3 AM pages.

web + TUI · BYOK · delegated Oracle user auth

Like Claude Code — but for Oracle.

Persistent sessions. 50-step autonomous runs. Approval chips gate every Oracle write. Works in your terminal or browser. The agent remembers every task it's done for your org.

erp · session #3
● dev2 connected delegated: john.smith mem: 14 hits
erp> run month-end close for EMEA and fix any failed ESS jobs
Recalling prior runs... 2 matches found
· Apr close: MONTH_END_CLOSE_EMEA · run #4680 · 12 min · success
· BU=FR_EMEA, BU=BE_EMEA, BU=NL_EMEA — confirmed from memory
Checking ESS job queue...
· 1 failed job: GL_PERIOD_CLOSE_VALIDATION · request #48811 · failed 02:14 UTC
· Error: "Period already closed for BU=BE_EMEA" — known false-positive, safe to retry
Checked BIP catalog — report /Custom/Finance/MonthEnd found
⚡ Approval required — 2 ESS writes
Submit MONTH_END_CLOSE_EMEA · Retry GL_PERIOD_CLOSE_VALIDATION for BE_EMEA
[y] approve   [n] reject   [?] explain   [e] edit params
Waiting for approval...

every tool call auditable · every write gated · sessions persist across disconnects

Every Oracle verb. One agent.

Reads run autonomously. Writes go through an approval chip you click or keystroke in the session. Every action hits the audit log.

read

Oracle ERP read

REST query + describe, BIP SQL execution, BIP catalog browse, ESS job status, SCIM user lookup, config baseline fetch.

write · approval gated

Oracle ERP write

REST create/update/action, BIP report deploy, FBDI load submit, ESS job submit, SCIM role assign, OIC integration trigger.

code

Python execution

Sandboxed Python in-session. Transform BIP output, generate FBDI files, run analysis, produce charts — without leaving the agent.

memory

Persistent org memory

Episodic, procedural, and factual memory per tenant. Agent recalls prior runs, org-specific config, and BU/report paths without being re-told.

integrations

ERPHive flows

Trigger and monitor ERPHive integration flows (OIC replacement) alongside Oracle calls. One agent session spans both systems.

tickets

Ticket lifecycle

Create, triage, update, and close tickets tied to agent runs. Jira + ServiceNow sync. Every agent action links back to a ticket.

knowledge

RAG + knowledge base

272K+ Oracle public docs always available. Your /Custom BIP catalog auto-ingested and queryable. Agent surfaces relevant docs before every Oracle call.

daemons

8 background loops

Triage, ESS monitoring, health checks, drift detection — running even when no session is open. Surface approval chips on login.

security

Delegated user auth

Agent calls Oracle as the logged-in user, not a service account. Certificate registered in your Oracle Security Console. User's BU/role restrictions automatically enforced.

Remembers everything.
Redoes tasks in seconds.

Three memory layers per tenant, stored in Vectorize. Recalled at session start so the agent walks in knowing your environment — not learning it from scratch.

Episodic

What we did before

Every successful agent run is embedded and recalled by semantic search. "Do the same as last month" finds and replays the exact task.

"Ran AP aging for BU=FR_EMEA, exported CSV, submitted to REPORT_ARCHIVE via ESS — Apr 2026, 847 rows"
Procedural

How to do it

Successful runs auto-create a replayable Flow record. One click to re-run. The agent can also find and modify it for similar tasks.

flow: "month_end_ap_aging_emea"
steps: bip_run → ess_submit → notify
source: ai_generated
Factual

What we know about your org

BU names, report paths, ESS job IDs, environment quirks — extracted from runs and stored. The agent doesn't rediscover them on every session.

"BU=FR_EMEA is the French entity"
"Month-end ESS job: ACME_CLOSE_V2"
"/Custom/AP/ has 14 active reports"

Working when you're not.

Eight sentries run on schedules, surface proactive approval chips at session start. Reads are autonomous — writes wait for you.

01Inbound triage — classifies new Jira / ServiceNow tickets60s
02Health monitor — REST, BIP login, ESS scheduler5min
03ESS job watcher — proactive notify on terminal state2min
04FBDI load supervisor — parses logs, surfaces row errors30s
05/Custom drift detector — re-ingests changed BIP catalognightly
06Knowledge gap learner — discovers schema on failed lookupsevent
07Update poller — surfaces release notes & breaking flagsconfigurable
08Stale-session resumer — surfaces unfinished approval chipson login

ERPStudio + ERPHive.
Connected via MCP.

ERPStudio handles AI operations and change control. ERPHive is the Cloudflare-native OIC replacement. One agent session connects to both — trigger integrations and read Oracle data in the same conversation.

ERPStudio

AI Ops Control Plane

Tickets, change control, BIP/FBDI/ESS/SCIM, config promotion, audit

  • Autonomous agent sessions (TUI + web)
  • Ticket → deploy journey with approval gating
  • 8 always-on background loops
  • Config baseline, diff, promote across envs
  • Per-tenant memory and private BIP RAG
  • Delegated Oracle user auth (JWT certificate)
ERPHive

Integration Runtime

OIC replacement — file-based flows, Git-native, AI-built

  • Human-readable flow artifacts in Git
  • Oracle, HTTP, email, Slack adapters built-in
  • AI agent builds and debugs flows via chat
  • Flow + environment + deployment promotion model
  • OIC migration path — import .iar, convert to ERPHive
  • MCP server — callable from ERPStudio agent
Connected via MCP protocol

ERPStudio agent connects to both Oracle MCP and ERPHive MCP in the same session. Trigger an ERPHive flow and query Oracle results in one conversation.

Questions

What does "autonomous agent session" mean exactly?

Each session is a persistent Cloudflare Durable Object — a stateful compute unit with its own SQLite history, memory recall, and WebSocket connection. Sessions survive browser closes and reconnects. You can have multiple running in parallel (capped by plan tier). The agent inside each session can run up to 50 autonomous tool-call steps per turn, polls long-running jobs via CF Alarms (so it doesn't block), and never forgets context mid-task.

You interact via the TUI (erp CLI in your terminal) or the web app at app.erpstudio.ai. Both connect to the same Durable Object.

What is delegated user auth and why does it matter?

By default the agent uses a service account to call Oracle — one set of credentials per environment. Delegated auth means the agent calls Oracle as the logged-in user. Your Oracle security policies (BU access, ledger restrictions, role-based data access) are enforced automatically — the agent can only see what that user can see.

Implementation: you register a certificate (public key) once in Oracle Security Console. ERPStudio mints a short-lived RS256 JWT for the user, signed with the private key, sent as the Bearer token. No OIC required, no extra infrastructure. Configurable per environment by your admin in Settings.

What is ERPHive and how does it relate to ERPStudio?

ERPHive is the Cloudflare-native OIC replacement — an integration runtime where flows are human-readable Git artifacts, built and debugged via AI chat. It handles adapter connections (Oracle, HTTP, email, Slack) and runs flows as CF Workers.

ERPStudio is the AI ops control plane on top: tickets, change control, agent sessions, config promotion. The two connect via MCP — your ERPStudio agent session can trigger ERPHive flows, check run status, and debug failures without leaving the conversation. Same agent, two systems.

What is BYOK (Bring Your Own Key)?

Enterprise plan customers can provide their own Anthropic API key (and optionally OpenAI / other provider keys). The agent uses your key instead of ours. Your LLM usage goes through your own Anthropic account — you control billing, rate limits, and the data retention terms of your own agreement. Your Oracle data never passes through the MeruTech Anthropic account.

Oracle AI Agent Studio is free with Fusion. Why ERPStudio?

Oracle's agents live inside one Fusion instance and surface in dashboards. ERPStudio is the operations workbench that runs across environments — dev, test, uat, prod — through the full change lifecycle: ticket arrives, agent triages, config diff runs, change is promoted, audit closes the loop.

ERPStudio also handles things Oracle's agents don't: FBDI pipelines, ESS job monitoring, BIP deployment, config drift detection, Jira integration, and persistent autonomous sessions that survive a browser close. Use both — they're complementary.

How is data isolated between tenants?

Every table carries org_id from line one — enforced at the Drizzle query layer, not just application logic. Per-tenant encryption keys for Oracle credentials at rest (OCI Vault). The Vectorize memory index uses metadata filtering by org_id — your org's memory and BIP catalog are never retrievable by another tenant's queries. Durable Objects are one-per-session with cross-tenant rejection on connect.

What models does the agent use?

Claude Sonnet 4.6 for multi-step tool reasoning, Haiku 4.5 for sub-1.5s interactive turns. Extended thinking (8K budget tokens) enabled for complex analysis. All calls go through Cloudflare AI Gateway for caching, observability, and retries. BYOK customers use their own Anthropic account. Multi-provider fallback (GPT-4o, DeepSeek) available on Growth+ plans.

What does onboarding look like?

45-minute kickoff call. You get a setup pack for your Oracle admin covering service account creation and (optionally) certificate registration for delegated auth. Sandbox environment live same day. The agent walks your /Custom BIP catalog on first connect and ingests it into your private RAG namespace. Production environment takes a few business days — gated by your change management, not ours.

30-day direct line to Matt after go-live. First-run "your top 5 workflows" cheat-sheet generated from your actual usage patterns.

Can I run this on-premises?

Self-hosted is a bespoke engagement, not a published SKU. Scope varies by data residency, identity provider, and update cadence requirements. Get in touch if you have a strict on-prem mandate and we'll scope it.

One agent.
Every Oracle job.

Persistent sessions, org memory, approval-gated writes, ERPHive integration.

Request access →

guided onboarding · 45-minute kickoff · sandbox live same day