AI Engineering
Enterprise systems that reason, coordinate and act.
I design and build the architecture around language models: domain agents with their own tools and permissions, an orchestration layer that plans across business areas, governed execution against real ERP services, and realtime voice on the same path. What follows is the engineering, not the vocabulary.
Where the engineering sits
I do not train foundation models. I build the layers that turn them into software a business can rely on — routing, agents, tools, permissions, approvals and audit. The models are a dependency; the architecture is the work.
Foundation models
OpenAI · Gemini · Anthropic · DeepSeek
Provider abstraction
Capability-matched routing, not vendor lock-in
Where my engineering lives
JARVIS
Orchestration layer — intent, planning, routing, context
Agents
Tools
Governance
Enterprise software
ERP services, domain logic, data
01 — Progression
From generation, to agents, to coordination.
01 — Language models inside the product
Generative AI
Natural-language interaction, summarisation, drafting and structured output against real business data — in English and Arabic.
02 — Past prompt and response
AI agents
Domain agents with their own instructions, tools, permissions and boundaries, each answering for one business area.
03 — Agents that coordinate
Agentic AI
JARVIS, the orchestration layer, plans across domains, delegates to other agents, executes governed actions and stops for a human when the effect warrants it.
02 — Orchestration
JARVIS: one way in, many domains behind it.
Pick a scenario and step through it. Each path is a real one: the agents, action codes and approval points below exist in the platform’s registry.
What JARVIS is
JARVIS is the central orchestration layer I designed for the ERP — the component that interprets intent, holds context, selects the agent and capability for the job, and manages governed execution. It is not a model. It sits above whichever provider is configured and coordinates the agents, tools and approvals underneath.
RequestFind slow-moving products and prepare a campaign to promote them.
Chat / Realtime voice
JARVIS
Orchestration layer · intent · routing
CRM
Sales
Inventory
Finance
Marketing
Documents
Tool layer · ERP services
Governance
Permissions · policy · audit
Human approval
1 / 6
03 — Agent architecture
What an agent actually is.
An agent is not a prompt. It is a bounded unit with a domain, a tool set, the caller’s permissions, a data policy and rules about what it may do unattended.
Identity & domain
One business area, one set of responsibilities
Instructions
Role, boundaries, refusal conditions
Business context
Company and branch scope injected per run
Tools
Only the registered actions its domain allows
Permissions
The caller’s ERP rights, never the agent’s own
Policies
Data classification, redaction, retention
Memory
Scoped, governed, opt-in per assistant
Approval rules
Which effects may run unattended
Execution layer
Application services — never raw database access
04 — Autonomy
Bounded autonomy, not open-ended.
An agent run plans, calls tools, reads results and decides what to do next — inside a budget. Steps, tool calls, delegations, delegation depth, created records, publications and wall-clock duration are all capped, and the run is cancellable.
01
Understand
Resolve intent against the caller’s scope
02
Plan
Choose the domain, the agent and the sequence
03
Act
Invoke a registered tool, never a free-form query
04
Observe
Read the structured result back
05
Adapt
Continue, delegate, or stop against the step budget
Approve
Any write pauses here
↻ bounded by step, tool-call, delegation and duration budgets
05 — Governance
Autonomy without losing control.
Autonomous should never mean unrestricted. Agents act with the permissions of the person who asked, inside their company and branch scope. Read actions run; write actions are sealed and held for a human.
Agent decision
Permission check
The caller’s ERP rights and company scope
Governance policy
Action effect, risk, budget, data classification
If read
Read effect
Executes directly
Execute
If write
Write effect
Held for a human
Approve
Reject
Audit log
Sealed action, actor, inputs, outcome
06 — Tool execution
The model does not touch the database.
- 01Model requests a tool
- 02Tool registry resolves it
- 03Execution guard checks scope
- 04Application service runs
- 05Domain logic and validation
- 06Structured result returns
The model never reaches the database. It can only ask for actions the registry exposes, and each one runs through the same application service a human user would go through.
07 — Realtime voice
Speaking to the same system.
Voice is an interface, not a separate product. A spoken request enters a realtime session and then follows exactly the same routing, permission and approval path as a typed one.
Microphone
Browser session
Realtime provider
Gemini Live · OpenAI Realtime
JARVIS
Same routing as text
Tool call
Registered ERP action
Governance
Permissions apply identically
Spoken reply
Returned on the live session
08 — Provider abstraction
No single vendor in the business logic.
Agentic layer
Agents, tools, governance
Provider abstraction
Routes by capability — reasoning, tool calling, vision, realtime voice, embeddings
Anthropic
Default
OpenAI
Realtime · embeddings
Gemini
Realtime · vision
DeepSeek
Reasoning
A model is a configuration value, not an architectural commitment.
09 — Capability stack
How the layers fit together.
Experience
Chat · Realtime voice · Agent activity view
Orchestration
JARVIS · Intent · Routing · Planning · Delegation
Agent
CRM · Sales · Inventory · Finance · HR · Marketing · Documents
Governance
Permissions · Approvals · Policies · Budgets · Audit
Tool
Registered ERP actions · Execution guard · External research
Provider
Anthropic · OpenAI · Gemini · DeepSeek
Platform
Laravel · React · PostgreSQL · Redis · Queues
10 — Beyond API integration
What I actually built.
Calling a model API is a few lines. Everything below is the part that took the engineering.
- Agent orchestration and routing
- Domain-specific agents with their own tool sets
- A registry of governed ERP actions
- Business-context injection per run
- Provider abstraction across four vendors
- Permission-aware execution under the caller’s rights
- Human approval workflows for write effects
- Data classification, redaction and retention policy
- Multi-agent delegation with depth limits
- Autonomous objectives on schedules and events
- Realtime voice sessions with tool calling
- Agent activity and run timelines
- Structured outputs and tool schemas
- Usage budgets and per-tool rate limits
- Versioned agent configuration
- Audit trails and incident records
- Cancellation and failure handling
Building an AI-powered product or enterprise system?
Let’s design software that does not just respond — it understands context, coordinates tools and agents, and gets work done.