Hakuna Intelligence

JARVIS

An LLM assistant living inside Hakuna’s Salesforce: ask in plain language, it queries the org and answers with data — with a voice, a soundtrack and a personality of its own.

SalesforceLWCApexClaude APITool-use agentElevenLabs voiceSQL on live data

Every day the team needs answers that live inside the CRM: how many people are confirmed for an escapada, which activities are filling up, how the shop is doing. JARVIS turns those questions into conversations.

JARVIS is a custom chat experience built into Salesforce as a Lightning tab and a floating utility-bar companion: a Lightning Web Component front end with its own personality (cinematic intro included), backed by an LLM agent that plans multi-step queries, runs them against live org data and returns the answer with full transparency — tokens in and out, steps taken and which sources were consulted.

It ships with the details that make an internal tool feel like a product: suggested questions on the empty state, conversation history with search, image paste for visual questions, playful loading states and a one-tap “report error” flow that emails the full conversation to the ops team.

The demo

JARVIS live demo answering questions

Recorded July 2026: cinematic boot, a personal night-owl greeting — and a real question answered from live org data in seconds.

Live in production

JARVIS welcome screen with personalized greeting and suggested questions

Personal greetings that change with the time of day, plus one-tap suggested questions.

JARVIS answering a question with live org data and metadata

A real answer from live data — with full transparency: tokens, steps and sources consulted.

JARVIS returning a data table

Under the hood

No Agentforce, no middleware: a hand-built agent loop talking straight to the Claude API from Apex.

Agentic tool-use loop in Apex

The agent sends the question plus tool definitions to Claude, executes each tool_use locally, feeds results back and repeats until the model closes the turn — up to 12 iterations per question, with prompt caching to keep it fast and cheap.

Guardrailed SQL on live data

run_soql accepts SELECT only, over a whitelist of org objects, capped results, running in USER_MODE so field-level security and sharing rules always apply. No DML, ever.

Shopify tools via GraphQL

Beyond the CRM, JARVIS answers about the shop in real time — orders, products and revenue summaries pulled from the Shopify Admin GraphQL API, with throttling-aware retries.

Knowledge base search

A read-only library of ~180 internal docs synced into Salesforce lets JARVIS explain processes, not just count records — searched with SOSL when the question needs context.

A voice, literally

Spoken greetings by name and time of day, an epic “pantheon of legends” easter egg and situational clips — all generated with ElevenLabs and shipped as static resources with three original soundtracks.

Product-grade details

Private conversation history per user, custom markdown renderer (Locker-safe), record links in answers, image paste for vision questions, and error reports that email the whole conversation to ops.

The sound of JARVIS

JARVIS does not just have an interface — it has a voice and a soundtrack. Boot sounds, spoken greetings that change with the time of day, and its own theme.

Boot sequenceThe sound behind the intro you just watched.
“¿Quién soy?”JARVIS introduces itself, in its own voice.
“Buenos días, Víctor”Greetings are personal and change with the time of day.
“Apoteósico”The catchphrase.
Main themeOriginal soundtrack composed for the assistant.
← Back to portfolio
  • Previous ProjectCompartiriados — Donations Platform

  • Next ProjectLiberia Documentary Photography