Getting started with Hadron¶
By the end of this tutorial you'll have a chatbot agent that greets you, asks your name, and remembers it across sessions — running entirely in the Hadron portal, no integration code required. Plan on about ten minutes.
You will:
- Sign in to the portal and pick (or create) an organization.
- Create a chatbot agent through the Create Chatbot Agent wizard.
- Paste an LLM API key into the agent's Settings tab.
- Open the agent's Chat tab and have a real conversation.
- Reload the page and confirm the chat persists.
When you're done, Building a chatbot agent is the natural next read — it covers conversation design in depth.
What you'll need¶
- A modern browser, signed in to hadronmemory.com.
- Membership in a Hadron organization. If you don't have one, the Create Organization flow on the dashboard is two fields and thirty seconds.
- An API key from one supported LLM provider: Anthropic, OpenAI, GLM (z.ai), or AWS Bedrock. Anthropic and OpenAI are the fastest paths; GLM and Bedrock have extra setup we'll skip.
That's it. No CLI, no MCP host, no code editor.
Step 1: Open the Create Chatbot Agent wizard¶
- After sign-in, click into your organization from the dashboard.
- On the org page, click Create Chatbot Agent.
You're now on a wizard at
/app/orgs/{orgId}/create-chatbot. It scaffolds the four
moving parts a chatbot needs (an agent, a system memory, a
welcome conversation, a fallback conversation) in a single
submit.
Step 2: Fill in the wizard¶
The form is short:
| Field | What to enter |
|---|---|
| Agent name | My first chatbot (or anything you'll recognise) |
| Agent URN | Auto-fills as a slug from the name. Leave it. |
| Description | Optional. "My first Hadron chatbot." is fine. |
| System prompt | Optional. "You are friendly and brief. One short paragraph max per reply." gives the LLM a personality without over-scripting. |
| System memory URN | Auto-fills (<agent-slug>-system). Leave it. |
| Include knowledge memory | Leave unchecked for this tutorial. |
| Visibility | Personal is the default and is correct here. |
Click Create Chatbot Agent. The wizard:
- Creates the system memory that holds your bot's conversation designs and prompts.
- Creates a
setupconversation with one stage (onboard) whose prompt asks the user for their name. - Creates a
fallbackconversation that gracefully handles questions the bot can't answer. - Creates the agent itself, wired up to the system memory.
You land on the agent detail page at /app/agents/{agentId}.
Step 3: Configure your LLM provider¶
You'll see four tabs across the top: Memory, Chatbot Control, Settings, App. The Chat tab is missing — it appears only after an LLM provider is configured.
- Switch to Settings.
- Scroll to the LLM provider section.
- Click Configure.
- Pick your provider from the dropdown (Anthropic or OpenAI).
- Type a model identifier —
claude-4-opusfor Anthropic,gpt-4o-minifor OpenAI. The placeholder updates with the right shape per provider. - Paste your API key into API key.
- Click Test.
A green ✓ Works toast with a one-sentence reply means the key is valid. Click Save.
The form closes. The status row now reads ✓ Configured, and a fifth tab — Chat — has appeared next to Settings. The key is encrypted at rest with the server's master key; the portal won't display it back.
Step 4: Have a conversation¶
- Click the Chat tab.
- The sidebar reads "No chats yet." Click New chat.
The bot greets you and asks for your name — that's the
setup:onboard stage running.
Bot: Hi! I'm My first chatbot. What should I call you?
Reply with a name. The bot acknowledges and the chat moves on. Try a follow-up question — "What's the weather like?" will likely route into the fallback conversation, where the bot politely says it can't help with that. Both behaviours are defaults the wizard set up; you didn't write either prompt.
While the chat runs:
- Stage toasts flash above the input when the conversation transitions stages.
- The sidebar lists every chat. Each one belongs to you (per-user scoping is automatic — see Memory access for why).
- Behind the scenes, every message is going through Hadron's Chat API; your portal session is acting as the integration.
Step 5: Confirm persistence¶
- Reload the page. Your chat is still in the sidebar.
- Click into it. The history is intact.
- Send another message. The bot still remembers your name — it was extracted into the chat's user memory in Step 4.
If you wanted to drive the same bot from your own application
instead of the portal, the integration is four GraphQL calls
(startChat, sendChatMessage, processChatResponse, and
saveChatSummary).
Building a chatbot agent
covers the full design loop and shows the calls in context.
What just happened¶
You created an agent. The wizard wrote a small program for it
in your system memory — five conversation and prompt nodes. You
gave it an LLM key. The portal's Chat tab acts as the
integration, calling Hadron's Chat API on every turn:
startChat → sendChatMessage → processChatResponse.
Hadron compiles the prompt, manages stage transitions, extracts
data into memory, and remembers everything across reloads.
Nothing about this is a toy. The same Chat API powers production bots with multi-stage flows, conditional routing, goal stacks, and per-user memory isolation. You skipped the integration step by using the portal's Chat tab — you'll write the same calls when you ship it inside your own product.
Where to go next¶
A handful of next reads, depending on what you're doing:
- Building a chatbot agent — add real conversations, custom stages, prompts, and extraction specs. Required reading before you replace the wizard's scaffold.
- Conversation routing — the model: topics, conversations, stages, edges, goal stack, routing.
- Edge conditions — when to reach for deterministic edge conditions vs. letting the LLM decide.
- Build a conditional conversation flow — worked walk-through of an edge that skips a stage when its data is already on file.
- Test personas — automate regression testing on conversations.