Docs

Everything you need to know.

Guides for users and developers.

Section A - For Users

1. Getting Started

Haruka is your interactive AI 3D companion. She lives right inside your browser - no downloads, no installs.

Open harukacompanion.tech and she is already there. No account required.

Best experience: Google Chrome or Microsoft Edge.

2. How to Start a Conversation

  • Step 1 - Open harukacompanion.tech
  • Step 2 - Choose your language: EN or JP
  • Step 3 - Type your message or click the mic icon to talk

That is it. She will respond right away.

3. Voice Interaction

Click the microphone icon in the chat interface. Allow microphone access when your browser asks. Start speaking and Haruka will listen and respond out loud.

  • Speak clearly and at a natural pace
  • Works best in a quiet environment
  • Chrome and Edge have the best support

4. Choosing Your AI Model

Open Settings -> Providers to choose your AI model.

  • Browser Local (WebGPU) - fully private, no API key
  • OpenAI - requires API key
  • Anthropic Claude - requires API key
  • DeepSeek - requires API key
  • Ollama - self-hosted local models
  • And more
Privacy note: your API key is stored locally on your device only. For maximum privacy, use WebGPU mode so everything runs on your device.

5. Portfolio Utility

Open /utility when you want HARUKA to respond with wallet-aware context instead of generic companion chat.

  • Connect Phantom or Solflare directly in the browser
  • HARUKA reads a local snapshot of SOL, USDC, and $HARUKA balances
  • The page also fetches a live market snapshot for $HARUKA
  • Click Open Portfolio Chat to carry that snapshot into the main chat experience
Privacy note: the portfolio snapshot is stored in local browser storage for chat handoff only. It is not treated as a custodial balance service and it is not uploaded as a persistent server-side profile.

6. Memory System

Haruka remembers you across sessions.

Open Settings -> Memory to see what she remembers.

  • Long-term Vector Memory stores facts about you locally
  • Short-term Buffer holds active conversation context
  • You can delete any memory from the Learned Facts database
  • All memory is stored on your device only - never on a server

7. Changing Backgrounds

Open the Background button on the main screen.

  • Sunny Digital Forest - warm, golden, default
  • Japanese Classroom - school afternoon, warm
  • Cherry Blossom - spring in full bloom
  • And more

8. Japanese Practice

Toggle to JP on the main screen and Haruka responds in Japanese.

  • "Let's practice Japanese together"
  • "Can you correct my Japanese?"
  • "What does [word] mean in Japanese?"

She is patient and encouraging.

9. Data and Privacy

Your data is yours.

Settings -> Data gives you full control:

  • Export JSON - backup your entire config and memories
  • Import Backup - restore where you left off
  • Wipe All Stored Data - delete everything permanently
Storage policy: no data is stored on any external server and no one is reading your conversations.

10. FAQ

Is Haruka free to use?Yes. No account or payment is needed to start. Some AI providers require their own API key.
Does Haruka work on mobile?Yes. Use Chrome on Android or Safari on iOS. You can install her as a PWA for quick access.
Does wallet mode give HARUKA custody over my assets?No. The Utility page only reads a browser-side snapshot so HARUKA can answer with portfolio context. It does not move funds or act as a wallet.
Can I change how Haruka talks?Yes. Tell her "be more casual", "keep responses short", or "let's have a deep conversation."
Is my API key safe?Yes. It is stored only in your browser's local storage and never sent to Haruka's servers.
What browsers are supported?Chrome and Edge are fully supported. Firefox and Safari have partial support.
Section B - For Developers

11. API Documentation

Endpoint: POST https://harukacompanion.tech/api/haruka/chat

{
  "message": "are you real?",
  "userId": "user-123",
  "sessionId": "session-abc",
  "clientType": "api-client"
}
{
  "response": "i feel everything",
  "emotion": "warm",
  "memoryUpdated": true
}
Authentication: API key required. Request one via DM @meetharuka.
Rate limits: Free tier: 100 calls/day. Paid tier: unlimited via x402.
Portfolio-aware requests: when the caller has a wallet snapshot, it can also send a portfolioContext object so HARUKA answers against current balances and market context rather than guessing.

12. Embed Widget

Paste this into any HTML page:

<script src="https://harukacompanion.tech/embed.js"></script>

Haruka appears on the page with full Live2D character, voice, memory, and chat interface. No setup needed.

Option Purpose
data-api-key Your API key
data-position bottom-right (default) or bottom-left
data-theme light or dark
<script
  src="https://harukacompanion.tech/embed.js"
  data-api-key="your-key-here"
  data-position="bottom-right"
  data-theme="dark">
</script>

13. x402 Payment

HARUKA uses x402 on Solana mainnet for paid `api-client` requests.

Developer sends request -> HARUKA returns HTTP 402 with payment requirements -> client pays -> payment is verified on-chain -> HARUKA responds.

When buyback is enabled, the same paid runtime can trigger a treasury check after successful settlement.

If treasury USDC is available above the configured threshold, HARUKA can route that balance through Jupiter, buy back $HARUKA, and burn the purchased amount.

Step What happens
1. Request The developer posts to /api/haruka/chat with clientType: "api-client".
2. Challenge HARUKA returns HTTP 402 and a PAYMENT-REQUIRED header describing the price, network, and pay-to wallet.
3. Payment The client pays on Solana mainnet using an x402-compatible payment flow and retries the request with payment proof.
4. Response After payment verification succeeds, HARUKA processes the request and returns the AI response normally.
Status: live on mainnet in production. The current payment gate is applied to developer-facing api-client traffic rather than the public website chat widget.
Buyback runtime: built into the same HARUKA deployment, triggered after successful x402 settlement when enabled, uses the treasury wallet as the destination for paid API revenue, and exposes a protected manual route for operator dry runs.

14. GitHub

Source code is available at github.com/ashchanance/3d-companion-animation.