We provide a sample agent — the expense agent — that you can clone and run end to end to see how SIA works. It gives you something working to try the whole flow against.
You don't have to stop there. You can build any agent of your own, structured the same way as the sample expense agent, and point SIA at it to start improving it. The steps below are the same either way.
Before you start:SIA improves agents that already run. Make sure your agent executes cleanly end to end on its own — no SIA involved — before you point SIA at it. See[step 5].
Signup on sia.hexo.ai.
Once you've signed up, reach out to us to request approval — we'll get you set up with API keys as well.
git clone https://github.com/hexo-ai/expense-agent.git
This is the sample agent. Once you're ready to work on one of your own, point these same steps at your agent's repo instead.
conda create -n expense python=3.12
conda activate expense
pip install sia-foundry
cd expense-agent
Create .env
file for your agent.
Do this before anything else in SIA. SIA's whole job is to improve an agent that already works. It generates evals against your agent, runs it, reads the failures, and proposes fixes. If the agent can't complete a run on its own, every failure SIA finds will be a setup problem — missing keys, bad config, a broken dependency — not a real weakness in the agent. You'll spend your time debugging plumbing instead of improving behavior.
So run your agent by hand first, start to finish, on a normal input. Confirm it:
- starts without errors
- reads its
.env
and reaches every API and service it depends on - completes a full task and returns the output you expect
Only once a clean run works every time should you move on. If you're using the sample expense agent, run it as-is and confirm it completes before continuing.
sia login --foundry https://sia.hexo.ai --device
sia init
sia status
sia evals generate
sia envs generate
sia evals run
sia failures detect
sia fixes propose
sia fixes show p1
sia fixes apply p1 # only when you want it landed
sia evals run