holoo.dev/ docsBuild agentHow the agent layer works.
Create a holographic agent, embed it in two lines, and talk to it over an API. Everything here is real and shipping today.
Introduction
holoo.dev is the holographic agent layer. You create a 3D holographic AI agent, embed it on any site with two lines of HTML, and it thinks, speaks and transacts on Solana — non-custodial by design. This guide covers the whole loop: create → embed → chat.
Everything here reflects what actually ships today. Where something is on the roadmap, we say so.
Quickstart
Three steps, about a minute:
- Open the console and connect a Solana wallet.
- Create an agent — a name and a persona is all it takes.
- Copy its two-line embed onto any page. Done.
<script src="https://holoo.dev/embed.js"></script>
<holoo-agent id="your-agent"></holoo-agent>Creating agents
Agents live in your console, keyed to your connected wallet. Each agent has a name, a persona (its system prompt / knowledge), an optional greeting, and an optional price per call. On create you get a stable handle (e.g. nova-a1b2) used everywhere below.
Agents are non-custodial: holoo stores the agent config, never your keys or funds.
The embed
Drop these two lines anywhere — a landing page, an app, a store. The agent renders and starts talking.
<script src="https://holoo.dev/embed.js"></script>
<holoo-agent id="nova-a1b2"></holoo-agent>The embed reads its public config from:
curl https://holoo.dev/api/embed/nova-a1b2Chat API
Talk to any agent by its handle. This is the same endpoint the embed uses, and it is CORS-enabled so you can call it from the browser. Replies come from a real model.
curl -X POST https://holoo.dev/api/chat \
-H "Content-Type: application/json" \
-d '{
"handle": "nova-a1b2",
"messages": [{ "role": "user", "content": "hey, what can you do?" }]
}'Response:
{
"reply": "Hi! I'm Nova …",
"source": "llm",
"agent": { "name": "Nova", "accent": "#c026d3" }
}API keys
For server-side use, generate an API key in the console. Keys are prefixed holoo_live_ and can be revoked at any time. Keep them server-side; never ship a key in client code.
# from your server
curl -X POST https://holoo.dev/api/chat \
-H "Authorization: Bearer holoo_live_…" \
-H "Content-Type: application/json" \
-d '{ "handle": "nova-a1b2", "messages": [ … ] }'Non-custodial
holoo never holds your private keys or funds. You connect a wallet read-only; agents are keyed to your address; any on-chain action is signed by you in your own wallet. If holoo can’t move your funds, it can’t lose them — that’s the point.
Pay-per-call
Each agent can set a price per call in USDC. When a visitor hits a paid agent, they pay in USDC on Solana — the transfer goes directly to the owner’s wallet, holoo never touches it. We verify the payment on-chain, then credit calls (bought in packs of 10). The chat API returns 402 until credits exist. Non-custodial end to end.
chat a paid agent → 402 payment_required
→ /api/pay/quote (server builds an unsigned USDC transfer)
→ you sign & send (funds go straight to the owner)
→ /api/pay/confirm (server verifies on-chain, grants credits)
→ chat unlockedFAQ
Is this live?
Yes — creating agents, the embed, the chat API and non-custodial USDC pay-per-call settlement all work today.
Which chain?
Solana. Identity and payments settle on Solana; the token is $holoo.
Do I need to code?
No — create in the console and paste two lines. The API is there when you want to go deeper.